From 6fd485c2fe634f58b3e04cb571e6e8b7fe1daab9 Mon Sep 17 00:00:00 2001 From: Patrick Fic Date: Tue, 12 May 2020 10:25:36 -0700 Subject: [PATCH] Added deleting of custom templates for BOD-85. --- bodyshop_translations.babel | 147 +++++ client/package.json | 10 +- .../components/header/header.component.jsx | 5 + .../shop-template-add.component.jsx | 78 +++ .../shop-template-delete.component.jsx | 44 ++ .../shop-template-editor.component.jsx | 38 +- .../shop-template-editor.container.jsx | 5 +- .../shop-templates-list.container.jsx | 20 +- client/src/graphql/templates.queries.js | 19 + .../shop-templates.container.js | 16 +- client/src/translations/en_us/common.json | 9 +- client/src/translations/es/common.json | 9 +- client/src/translations/fr/common.json | 9 +- client/src/utils/RenderTemplate.js | 5 +- client/src/utils/constants.js | 20 +- client/yarn.lock | 548 ++++++++++-------- .../down.yaml | 6 + .../up.yaml | 29 + .../down.yaml | 6 + .../up.yaml | 19 + hasura/migrations/metadata.yaml | 35 ++ 21 files changed, 770 insertions(+), 307 deletions(-) create mode 100644 client/src/components/shop-template-add/shop-template-add.component.jsx create mode 100644 client/src/components/shop-template-delete/shop-template-delete.component.jsx create mode 100644 hasura/migrations/1589302634242_update_permission_user_public_table_templates/down.yaml create mode 100644 hasura/migrations/1589302634242_update_permission_user_public_table_templates/up.yaml create mode 100644 hasura/migrations/1589303851671_update_permission_user_public_table_templates/down.yaml create mode 100644 hasura/migrations/1589303851671_update_permission_user_public_table_templates/up.yaml diff --git a/bodyshop_translations.babel b/bodyshop_translations.babel index 6e8a8ab4c..4c760d478 100644 --- a/bodyshop_translations.babel +++ b/bodyshop_translations.babel @@ -739,6 +739,27 @@ actions + + addtemplate + false + + + + + + en-US + false + + + es-MX + false + + + fr-CA + false + + + newstatus false @@ -1877,6 +1898,27 @@ + + customtemplates + false + + + + + + en-US + false + + + es-MX + false + + + fr-CA + false + + + jobstatuses false @@ -1898,6 +1940,27 @@ + + notemplatesavailable + false + + + + + + en-US + false + + + es-MX + false + + + fr-CA + false + + + orderstatuses false @@ -4389,6 +4452,27 @@ + + areyousure + false + + + + + + en-US + false + + + es-MX + false + + + fr-CA + false + + + barcode false @@ -4536,6 +4620,27 @@ + + no + false + + + + + + en-US + false + + + es-MX + false + + + fr-CA + false + + + out false @@ -4599,6 +4704,27 @@ + + yes + false + + + + + + en-US + false + + + es-MX + false + + + fr-CA + false + + + @@ -10293,6 +10419,27 @@ + + shop_templates + false + + + + + + en-US + false + + + es-MX + false + + + fr-CA + false + + + shop_vendors false diff --git a/client/package.json b/client/package.json index e92b2fc26..206234f61 100644 --- a/client/package.json +++ b/client/package.json @@ -5,10 +5,10 @@ "proxy": "https://localhost:5000", "dependencies": { "@nivo/pie": "^0.61.1", - "@tinymce/tinymce-react": "^3.5.0", + "@tinymce/tinymce-react": "^3.6.0", "aamva": "^1.2.0", - "antd": "^4.2.0", - "apollo-boost": "^0.4.4", + "antd": "^4.2.2", + "apollo-boost": "^0.4.8", "apollo-link-context": "^1.0.20", "apollo-link-error": "^1.1.13", "apollo-link-logger": "^1.2.3", @@ -17,7 +17,7 @@ "axios": "^0.19.2", "dinero.js": "^1.8.1", "dotenv": "^8.2.0", - "firebase": "^7.14.2", + "firebase": "^7.14.3", "graphql": "^15.0.0", "i18next": "^19.4.4", "i18next-browser-languagedetector": "^4.1.1", @@ -41,7 +41,7 @@ "react-number-format": "^4.4.1", "react-redux": "^7.2.0", "react-resizable": "^1.10.1", - "react-router-dom": "^5.1.2", + "react-router-dom": "^5.2.0", "react-scripts": "3.4.1", "react-trello": "^2.2.5", "react-virtualized": "^9.21.2", diff --git a/client/src/components/header/header.component.jsx b/client/src/components/header/header.component.jsx index f1722a591..4d204a245 100644 --- a/client/src/components/header/header.component.jsx +++ b/client/src/components/header/header.component.jsx @@ -218,6 +218,11 @@ function Header({ {t("menus.header.shop_config")} + + + {t("menus.header.shop_templates")} + + {t("menus.header.shop_vendors")} diff --git a/client/src/components/shop-template-add/shop-template-add.component.jsx b/client/src/components/shop-template-add/shop-template-add.component.jsx new file mode 100644 index 000000000..36c44486d --- /dev/null +++ b/client/src/components/shop-template-add/shop-template-add.component.jsx @@ -0,0 +1,78 @@ +import { DownOutlined } from "@ant-design/icons"; +import { useMutation } from "@apollo/react-hooks"; +import { Dropdown, Menu } from "antd"; +import queryString from "query-string"; +import React from "react"; +import { useTranslation } from "react-i18next"; +import { connect } from "react-redux"; +import { useHistory, useLocation } from "react-router-dom"; +import { createStructuredSelector } from "reselect"; +import { INSERT_TEMPLATE } from "../../graphql/templates.queries"; +import { selectBodyshop } from "../../redux/user/user.selectors"; +import { TemplateList } from "../../utils/constants"; + +const mapStateToProps = createStructuredSelector({ + //currentUser: selectCurrentUser + bodyshop: selectBodyshop, +}); + +export default connect(mapStateToProps, null)(ShopTemplateAddComponent); + +export function ShopTemplateAddComponent({ + bodyshop, + shopTemplateList, + refetch, +}) { + const { t } = useTranslation(); + const search = queryString.parse(useLocation().search); + const history = useHistory(); + const [insertTemplate] = useMutation(INSERT_TEMPLATE); + + const shopTemplateKeys = shopTemplateList.map((template) => template.name); + const availableTemplateKeys = Object.keys(TemplateList).filter( + (tkey) => !shopTemplateKeys.includes(tkey) + ); + + const handleAdd = async (item) => { + const result = await insertTemplate({ + variables: { + template: { + name: item.key, + bodyshopid: bodyshop.id, + html: `
Insert your custom template here.
`, + query: `query JOBS { + jobs{ + id + ro_number + } + }`, + }, + }, + }); + + const returningId = result.data.insert_templates.returning[0].id; + search.customTemplateId = returningId; + history.push({ search: queryString.stringify(search) }); + if (!!refetch) refetch(); + }; + + const menu = ( + + {availableTemplateKeys.length > 0 ? ( + availableTemplateKeys.map((tkey) => ( + {TemplateList[tkey].title} + )) + ) : ( +
{t("bodyshop.labels.notemplatesavailable")}
+ )} +
+ ); + + return ( + + + {t("bodyshop.actions.addtemplate")} + + + ); +} diff --git a/client/src/components/shop-template-delete/shop-template-delete.component.jsx b/client/src/components/shop-template-delete/shop-template-delete.component.jsx new file mode 100644 index 000000000..cc1fee3a2 --- /dev/null +++ b/client/src/components/shop-template-delete/shop-template-delete.component.jsx @@ -0,0 +1,44 @@ +import { useMutation } from "@apollo/react-hooks"; +import { Button, notification, Popconfirm } from "antd"; +import queryString from "query-string"; +import React from "react"; +import { useTranslation } from "react-i18next"; +import { useHistory, useLocation } from "react-router-dom"; +import { DELETE_TEMPLATE } from "../../graphql/templates.queries"; + +export default function ShopTemplateDeleteComponent({ templateId, refetch }) { + const { t } = useTranslation(); + const search = queryString.parse(useLocation().search); + const history = useHistory(); + const [deleteTemplate] = useMutation(DELETE_TEMPLATE); + + const handleDelete = async () => { + const result = await deleteTemplate({ + variables: { + templateId: templateId, + }, + }); + + if (!!result.errors) { + notification["error"]({ + message: t("bodyshop.errors.deletingtemplate", { + message: JSON.stringify(result.errors), + }), + }); + } else { + delete search.customTemplateId; + history.push({ search: queryString.stringify(search) }); + if (!!refetch) refetch(); + } + }; + + return ( + + + + ); +} diff --git a/client/src/components/shop-template-editor/shop-template-editor.component.jsx b/client/src/components/shop-template-editor/shop-template-editor.component.jsx index 34ea507bd..7a4be9a72 100644 --- a/client/src/components/shop-template-editor/shop-template-editor.component.jsx +++ b/client/src/components/shop-template-editor/shop-template-editor.component.jsx @@ -1,7 +1,7 @@ import { Editor } from "@tinymce/tinymce-react"; import React, { useEffect } from "react"; import ShopTemplateEditorSaveButton from "../shop-template-editor-save-button/shop-template-editor-save-button.component"; - +import { Input } from "antd"; export default function ShopTemplateEditorComponent({ templateId, html, @@ -11,14 +11,12 @@ export default function ShopTemplateEditorComponent({ const [editorContent, seteditorContent] = editorState; useEffect(() => { - console.log("HTML UE"); seteditorContent((prevstate) => { return { ...prevstate, html: html }; }); }, [html, seteditorContent]); useEffect(() => { - console.log("gql UE"); seteditorContent((prevstate) => { return { ...prevstate, gql: gql }; }); @@ -26,13 +24,11 @@ export default function ShopTemplateEditorComponent({ return (
- Editor Here. template Editor - TEMPLATE QUERY - - seteditorContent({ ...editorContent, gql: text }) + rows={8} + onChange={(e) => + seteditorContent({ ...editorContent, gql: e.target.value }) } />
); } - -// { -// const data = await fetch(process.env.REACT_APP_GRAPHQL_ENDPOINT, { -// method: "POST", -// headers: { -// Accept: "application/json", -// "Content-Type": "application/json", -// }, -// body: JSON.stringify(graphQLParams), -// credentials: "same-origin", -// }); -// return data.json().catch(() => data.text()); -// }} -// /> diff --git a/client/src/components/shop-template-editor/shop-template-editor.container.jsx b/client/src/components/shop-template-editor/shop-template-editor.container.jsx index bd5d7b44a..5aa97124b 100644 --- a/client/src/components/shop-template-editor/shop-template-editor.container.jsx +++ b/client/src/components/shop-template-editor/shop-template-editor.container.jsx @@ -23,10 +23,11 @@ export default function ShopTemplateEditorContainer() { return ( + {data && data.templates_by_pk ? data.templates_by_pk.name : ""} diff --git a/client/src/components/shop-templates-list/shop-templates-list.container.jsx b/client/src/components/shop-templates-list/shop-templates-list.container.jsx index 3b3776311..c66d3cf91 100644 --- a/client/src/components/shop-templates-list/shop-templates-list.container.jsx +++ b/client/src/components/shop-templates-list/shop-templates-list.container.jsx @@ -7,9 +7,12 @@ import Skeleton from "../loading-skeleton/loading-skeleton.component"; import { useTranslation } from "react-i18next"; import { useHistory, useLocation } from "react-router-dom"; import queryString from "query-string"; +import { TemplateList } from "../../utils/constants"; +import ShopTemplateAdd from "../shop-template-add/shop-template-add.component"; +import ShopTemplateDeleteComponent from "../shop-template-delete/shop-template-delete.component"; export default function ShopTemplatesListContainer() { - const { loading, error, data } = useQuery(QUERY_CUSTOM_TEMPLATES); + const { loading, error, data, refetch } = useQuery(QUERY_CUSTOM_TEMPLATES); const { t } = useTranslation(); const search = queryString.parse(useLocation().search); const history = useHistory(); @@ -29,7 +32,11 @@ export default function ShopTemplatesListContainer() { return (
-
CUSTOM TEMPLATES
+
{t("bodyshop.labels.customtemplates")}
+ handleEdit(item)}> {t("general.actions.edit")} , - , + , ]}> diff --git a/client/src/graphql/templates.queries.js b/client/src/graphql/templates.queries.js index c62e2ef73..d00f59959 100644 --- a/client/src/graphql/templates.queries.js +++ b/client/src/graphql/templates.queries.js @@ -25,6 +25,7 @@ export const QUERY_TEMPLATE_BY_PK = gql` query QUERY_TEMPLATE_BY_PK($templateId: uuid!) { templates_by_pk(id: $templateId) { id + name query html } @@ -42,3 +43,21 @@ export const UPDATE_TEMPLATE = gql` } } `; + +export const INSERT_TEMPLATE = gql` + mutation INSERT_TEMPLATE($template: templates_insert_input!) { + insert_templates(objects: [$template]) { + returning { + id + } + } + } +`; + +export const DELETE_TEMPLATE = gql` + mutation DELETE_TEMPLATE($templateId: uuid!) { + delete_templates(where: { id: { _eq: $templateId } }) { + affected_rows + } + } +`; diff --git a/client/src/pages/shop-templates/shop-templates.container.js b/client/src/pages/shop-templates/shop-templates.container.js index 4665d8f47..42729239e 100644 --- a/client/src/pages/shop-templates/shop-templates.container.js +++ b/client/src/pages/shop-templates/shop-templates.container.js @@ -6,7 +6,7 @@ import { setBreadcrumbs } from "../../redux/application/application.actions"; import { selectBodyshop } from "../../redux/user/user.selectors"; import ShopTemplatesListContainer from "../../components/shop-templates-list/shop-templates-list.container"; import ShopTemplateEditor from "../../components/shop-template-editor/shop-template-editor.container"; - +import { Row, Col } from "antd"; const mapStateToProps = createStructuredSelector({ bodyshop: selectBodyshop, }); @@ -28,10 +28,16 @@ export function ShopTemplatesContainer({ setBreadcrumbs, bodyshop }) { }, [t, setBreadcrumbs, bodyshop.shopname]); return ( -
- - -
+ + + + + +
+ +
+ +
); } diff --git a/client/src/translations/en_us/common.json b/client/src/translations/en_us/common.json index 1cc9d6b73..bc2c608fe 100644 --- a/client/src/translations/en_us/common.json +++ b/client/src/translations/en_us/common.json @@ -66,6 +66,7 @@ }, "bodyshop": { "actions": { + "addtemplate": "Add Template", "newstatus": "Add Status" }, "errors": { @@ -129,7 +130,9 @@ "labels": { "alljobstatuses": "All Job Statuses", "allopenjobstatuses": "All Open Job Statuses", + "customtemplates": "Custom Templates", "jobstatuses": "Job Statuses", + "notemplatesavailable": "No templates available to add.", "orderstatuses": "Order Statuses", "responsibilitycenters": { "costs": "Cost Centers", @@ -305,6 +308,7 @@ }, "labels": { "actions": "Actions", + "areyousure": "Are you sure?", "barcode": "Barcode", "in": "In", "loading": "Loading...", @@ -312,9 +316,11 @@ "loadingshop": "Loading shop data...", "loggingin": "Logging you in...", "na": "N/A", + "no": "No", "out": "Out", "search": "Search...", - "unknown": "Unknown" + "unknown": "Unknown", + "yes": "Yes" }, "languages": { "english": "English", @@ -639,6 +645,7 @@ "schedule": "Schedule", "shop": "My Shop", "shop_config": "Configuration", + "shop_templates": "Templates", "shop_vendors": "Vendors", "vehicles": "Vehicles" }, diff --git a/client/src/translations/es/common.json b/client/src/translations/es/common.json index 7d3de5e3f..95e0f6c3e 100644 --- a/client/src/translations/es/common.json +++ b/client/src/translations/es/common.json @@ -66,6 +66,7 @@ }, "bodyshop": { "actions": { + "addtemplate": "", "newstatus": "" }, "errors": { @@ -129,7 +130,9 @@ "labels": { "alljobstatuses": "", "allopenjobstatuses": "", + "customtemplates": "", "jobstatuses": "", + "notemplatesavailable": "", "orderstatuses": "", "responsibilitycenters": { "costs": "", @@ -305,6 +308,7 @@ }, "labels": { "actions": "Comportamiento", + "areyousure": "", "barcode": "código de barras", "in": "en", "loading": "Cargando...", @@ -312,9 +316,11 @@ "loadingshop": "Cargando datos de la tienda ...", "loggingin": "Iniciando sesión ...", "na": "N / A", + "no": "", "out": "Afuera", "search": "Buscar...", - "unknown": "Desconocido" + "unknown": "Desconocido", + "yes": "" }, "languages": { "english": "Inglés", @@ -639,6 +645,7 @@ "schedule": "Programar", "shop": "Mi tienda", "shop_config": "Configuración", + "shop_templates": "", "shop_vendors": "Vendedores", "vehicles": "Vehículos" }, diff --git a/client/src/translations/fr/common.json b/client/src/translations/fr/common.json index ac36c234d..4218da0ef 100644 --- a/client/src/translations/fr/common.json +++ b/client/src/translations/fr/common.json @@ -66,6 +66,7 @@ }, "bodyshop": { "actions": { + "addtemplate": "", "newstatus": "" }, "errors": { @@ -129,7 +130,9 @@ "labels": { "alljobstatuses": "", "allopenjobstatuses": "", + "customtemplates": "", "jobstatuses": "", + "notemplatesavailable": "", "orderstatuses": "", "responsibilitycenters": { "costs": "", @@ -305,6 +308,7 @@ }, "labels": { "actions": "actes", + "areyousure": "", "barcode": "code à barre", "in": "dans", "loading": "Chargement...", @@ -312,9 +316,11 @@ "loadingshop": "Chargement des données de la boutique ...", "loggingin": "Vous connecter ...", "na": "N / A", + "no": "", "out": "En dehors", "search": "Chercher...", - "unknown": "Inconnu" + "unknown": "Inconnu", + "yes": "" }, "languages": { "english": "Anglais", @@ -639,6 +645,7 @@ "schedule": "Programme", "shop": "Mon magasin", "shop_config": "Configuration", + "shop_templates": "", "shop_vendors": "Vendeurs", "vehicles": "Véhicules" }, diff --git a/client/src/utils/RenderTemplate.js b/client/src/utils/RenderTemplate.js index 911785bb6..2905a7221 100644 --- a/client/src/utils/RenderTemplate.js +++ b/client/src/utils/RenderTemplate.js @@ -12,9 +12,12 @@ export default async function RenderTemplate(templateObject, client, bodyshop) { let templateToUse; if (templateRecords.templates.length === 1) { + console.log("[ITE] Using OOTB template."); templateToUse = templateRecords.templates[0]; } else if (templateRecords.templates.length === 2) { - templateToUse = templateRecords.templates.filter((t) => !!t.bodyshopid); + console.log("[ITE] Found custom template."); + templateToUse = templateRecords.templates.filter((t) => !!t.bodyshopid)[0]; + console.log("templateToUse", templateToUse); } else { //No template found.Uh oh. alert("Template key does not exist."); diff --git a/client/src/utils/constants.js b/client/src/utils/constants.js index 75973f1e3..44d936386 100644 --- a/client/src/utils/constants.js +++ b/client/src/utils/constants.js @@ -1,4 +1,22 @@ export const EmailSettings = { fromNameDefault: "Bodyshop.app", - fromAddress: "noreply@bodyshop.app" + fromAddress: "noreply@bodyshop.app", +}; + +export const TemplateList = { + appointment_reminder: { + title: "Appointment Reminder", + description: "Sent to a customer as a reminder of an upcoming appointment.", + drivingId: "Appointment Id", + }, + parts_order_confirmation: { + title: "Parts Order Confirmation", + description: "Parts order template including part details", + drivingId: "Parts order Id", + }, + test_Template: { + title: "Test", + description: "Test - does nto exist.", + drivingId: "test does not exist.", + }, }; diff --git a/client/yarn.lock b/client/yarn.lock index 0c0c441a5..99f8ba28f 100644 --- a/client/yarn.lock +++ b/client/yarn.lock @@ -9,6 +9,11 @@ dependencies: tinycolor2 "^1.4.1" +"@ant-design/css-animation@^1.7.2": + version "1.7.2" + resolved "https://registry.yarnpkg.com/@ant-design/css-animation/-/css-animation-1.7.2.tgz#4ee5d2ec0fb7cc0a78b44e1c82628bd4621ac7e3" + integrity sha512-bvVOe7A+r7lws58B7r+fgnQDK90cV45AXuvGx6i5CCSX1W/M3AJnHsNggDANBxEtWdNdFWcDd5LorB+RdSIlBw== + "@ant-design/icons-svg@^4.0.0": version "4.0.0" resolved "https://registry.yarnpkg.com/@ant-design/icons-svg/-/icons-svg-4.0.0.tgz#6683db0df97c0c6900bb28a280faf391522ec734" @@ -1280,7 +1285,7 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.1.5", "@babel/runtime@^7.2.0", "@babel/runtime@^7.3.1", "@babel/runtime@^7.3.4", "@babel/runtime@^7.4.0", "@babel/runtime@^7.4.5", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2": +"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.1.5", "@babel/runtime@^7.2.0", "@babel/runtime@^7.3.1", "@babel/runtime@^7.3.4", "@babel/runtime@^7.4.5", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2": version "7.8.4" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.8.4.tgz#d79f5a2040f7caa24d53e563aad49cbc05581308" integrity sha512-neAp3zt80trRVBI1x0azq6c57aNBqYZH8KhMm3TaB7wEI5Q4A2SHfBHE8w9gOhI/lrqxtEbXZgQIrHP+wvSGwQ== @@ -1403,16 +1408,16 @@ resolved "https://registry.yarnpkg.com/@firebase/analytics-types/-/analytics-types-0.3.0.tgz#33c3f695313b561d48d18d663a20f20362d3ee7c" integrity sha512-0AJ6xn53Qn0D/YOVHHvlWFfnzzRSdd98Lr8Oqe1PJ2HPIN+o7qf03YmOG7fLpR1uplcWd+7vGKmxUrN3jKUBwg== -"@firebase/analytics@0.3.3": - version "0.3.3" - resolved "https://registry.yarnpkg.com/@firebase/analytics/-/analytics-0.3.3.tgz#9f7d865a2c1d57fc4167a17a3122b5c46e35da12" - integrity sha512-Mj4lufHCnDqI2e8jAFqWmo9r2ejBJiGbI0MUvoiKVMxQm0kddQxUwmxfE6ozOAZ2HjB6OZ0iiAO+XU+0w/BnlA== +"@firebase/analytics@0.3.4": + version "0.3.4" + resolved "https://registry.yarnpkg.com/@firebase/analytics/-/analytics-0.3.4.tgz#64146d8cb36c2239ba39330459022c3e8d861489" + integrity sha512-x5Hxj3B9Zm4H6CEjMD/J86WjmiX9C6AhBBltaYzWMtqkqa/WvvWMicl4MpwZXjOdBbOd286oGgJPFqQMUYI/WQ== dependencies: "@firebase/analytics-types" "0.3.0" - "@firebase/component" "0.1.10" - "@firebase/installations" "0.4.8" - "@firebase/logger" "0.2.2" - "@firebase/util" "0.2.45" + "@firebase/component" "0.1.11" + "@firebase/installations" "0.4.9" + "@firebase/logger" "0.2.3" + "@firebase/util" "0.2.46" tslib "1.11.1" "@firebase/app-types@0.6.0": @@ -1420,15 +1425,15 @@ resolved "https://registry.yarnpkg.com/@firebase/app-types/-/app-types-0.6.0.tgz#8dcc3e793c6983e9d54f7eb623a7618c05f2d94c" integrity sha512-ld6rzjXk/SUauHiQZJkeuSJpxIZ5wdnWuF5fWBFQNPaxsaJ9kyYg9GqEvwZ1z2e6JP5cU9gwRBlfW1WkGtGDYA== -"@firebase/app@0.6.2": - version "0.6.2" - resolved "https://registry.yarnpkg.com/@firebase/app/-/app-0.6.2.tgz#ecdd0ab743151bdbfedf2461b96e3a3b58e51a0a" - integrity sha512-rAxc90+82GAPpUxS02EO0dys4+TeQ6XjFjCwQz/OVptGeLgxN9ZoXYAf/bxyeYOdLxJW0kbEKE/0xXaJDt5gsg== +"@firebase/app@0.6.3": + version "0.6.3" + resolved "https://registry.yarnpkg.com/@firebase/app/-/app-0.6.3.tgz#dade13b381f3b02b9a3847c57a0eec584629d2df" + integrity sha512-59Q/XNi+QyV1GOvxN+BusoKjqDKUjDupePDhlT6SqvFdvb03TjG03fSfurhXGXmTk6f500aOIyVJ8UlYpTYrsg== dependencies: "@firebase/app-types" "0.6.0" - "@firebase/component" "0.1.10" - "@firebase/logger" "0.2.2" - "@firebase/util" "0.2.45" + "@firebase/component" "0.1.11" + "@firebase/logger" "0.2.3" + "@firebase/util" "0.2.46" dom-storage "2.1.0" tslib "1.11.1" xmlhttprequest "1.8.0" @@ -1443,19 +1448,19 @@ resolved "https://registry.yarnpkg.com/@firebase/auth-types/-/auth-types-0.10.0.tgz#9403633e723336055fad4bbf5e4c9fe3c55f8d3f" integrity sha512-VuW7c+RAk3AYPU0Hxmun3RzXn7fbJDdjQbxvvpRMnQ9zrhk8mH42cY466M0n4e/UGQ+0smlx5BqZII8aYQ5XPg== -"@firebase/auth@0.14.4": - version "0.14.4" - resolved "https://registry.yarnpkg.com/@firebase/auth/-/auth-0.14.4.tgz#f7f411ba13961b1b84be8db73e32506d96a12693" - integrity sha512-cjYdSZQZ73jiI8De8Vw4L4LooXanc7HaYu4pEbq81Aag8fNy3oitfi0qTcrGLB7a/VLEAt1RtWo+lWotwCU2Ow== +"@firebase/auth@0.14.5": + version "0.14.5" + resolved "https://registry.yarnpkg.com/@firebase/auth/-/auth-0.14.5.tgz#52a313579a711e70cefa735045242be1e29aefdc" + integrity sha512-76ejEQrJ81s2ZI2RV/AoZnw3sDl7dZSpaJJtPlhqlahymtQ2sSeAZJAmECcTB27PF6EeCdRhB9qOIKGAEAhbJg== dependencies: "@firebase/auth-types" "0.10.0" -"@firebase/component@0.1.10": - version "0.1.10" - resolved "https://registry.yarnpkg.com/@firebase/component/-/component-0.1.10.tgz#9df3a6555568602ca7b262a3bff2125024f61649" - integrity sha512-Iy1+f8wp6mROz19oxWUd31NxMlGxtW1IInGHITnVa6eZtXOg0lxcbgYeLp9W3PKzvvNfshHU0obDkcMY97zRAw== +"@firebase/component@0.1.11": + version "0.1.11" + resolved "https://registry.yarnpkg.com/@firebase/component/-/component-0.1.11.tgz#0341f2dd99eac32a28d2b674eef9be9b7c5c9ad9" + integrity sha512-HZ0fwtv8/b3KV4NUOqlcIr03+CpBKW0F1Jo6/HJ39AutS6XXbM2jtpXOd1wMq9lbhBHgEwt1sMPNKoPR1bFflQ== dependencies: - "@firebase/util" "0.2.45" + "@firebase/util" "0.2.46" tslib "1.11.1" "@firebase/database-types@0.5.0": @@ -1465,16 +1470,16 @@ dependencies: "@firebase/app-types" "0.6.0" -"@firebase/database@0.6.1": - version "0.6.1" - resolved "https://registry.yarnpkg.com/@firebase/database/-/database-0.6.1.tgz#76ee8003aa1fff7ff5deb317959bbb0e35e56765" - integrity sha512-7XqUbj3nK2vEdFjGOXBfKISmpLrM0caIwwfDPxhn6i7X/g6AIH+D1limH+Jit4QeKMh/IJZDNqO7P+Fz+e8q1Q== +"@firebase/database@0.6.2": + version "0.6.2" + resolved "https://registry.yarnpkg.com/@firebase/database/-/database-0.6.2.tgz#d8ef8134d2ce71d5af2a948f8d2fd1ae36a48a12" + integrity sha512-0D0WOqYlNg3NMi0hJPx18tun6FMfr31d1dZB0Lai0K5jScBhPr2h4Fy7yp5lyOklwDSAoBYxmpX4nzHuDheL9Q== dependencies: "@firebase/auth-interop-types" "0.1.4" - "@firebase/component" "0.1.10" + "@firebase/component" "0.1.11" "@firebase/database-types" "0.5.0" - "@firebase/logger" "0.2.2" - "@firebase/util" "0.2.45" + "@firebase/logger" "0.2.3" + "@firebase/util" "0.2.46" faye-websocket "0.11.3" tslib "1.11.1" @@ -1483,16 +1488,16 @@ resolved "https://registry.yarnpkg.com/@firebase/firestore-types/-/firestore-types-1.10.1.tgz#bf018f9c495f470592de745389474dc1c2960d3f" integrity sha512-vyKdm+AYUFT8XeUX62IOqaqPFCs/mAMoSEsqIz9HnSVsqCw/IocNjtjSa+3M80kRw4V8fI7JI+Xz6Wg5VJXLqA== -"@firebase/firestore@1.14.2": - version "1.14.2" - resolved "https://registry.yarnpkg.com/@firebase/firestore/-/firestore-1.14.2.tgz#c31123079cbc9a03228ea193081b2f1c217c2993" - integrity sha512-gUTQHiR1LN/g+iHfPZS+GJgDHK866xtAXcodSAOU4dt7k4B0oXllwuQmhjwQP0Gh7Lc/m+cK7dw/bmoHI6oWqQ== +"@firebase/firestore@1.14.3": + version "1.14.3" + resolved "https://registry.yarnpkg.com/@firebase/firestore/-/firestore-1.14.3.tgz#675e0c26db056eee140e06bb17ecc91f21cc4390" + integrity sha512-vmkXa5Msumutf0ZQjF8AQQwXr4mXI7D8TBbI44w+CMQEnKcD5MW7Dr1SmCTWy8+kNAAFwdA6lCiUtDY5Gx/Hlw== dependencies: - "@firebase/component" "0.1.10" + "@firebase/component" "0.1.11" "@firebase/firestore-types" "1.10.1" - "@firebase/logger" "0.2.2" - "@firebase/util" "0.2.45" - "@firebase/webchannel-wrapper" "0.2.39" + "@firebase/logger" "0.2.3" + "@firebase/util" "0.2.46" + "@firebase/webchannel-wrapper" "0.2.40" "@grpc/grpc-js" "0.8.1" "@grpc/proto-loader" "^0.5.0" tslib "1.11.1" @@ -1502,12 +1507,12 @@ resolved "https://registry.yarnpkg.com/@firebase/functions-types/-/functions-types-0.3.16.tgz#be0362d7f61648fdf36a7d95de239eddee88f931" integrity sha512-kHhBvSYiY2prY4vNQCALYs1+OruTdylvGemHG6G6Bs/rj3qw7ui3WysBsDU/rInJitHIcsZ35qrtanoJeQUIXQ== -"@firebase/functions@0.4.42": - version "0.4.42" - resolved "https://registry.yarnpkg.com/@firebase/functions/-/functions-0.4.42.tgz#a54622b757f98ea08c43880706cfcd4b1a527c84" - integrity sha512-7L2l0NvWCL1z2vWqvxE7srQ64XCIzgMTIM2uANPT1yh+bMcZPxl3SuP4LoDhXbfmLtpzGKTygsxP4WKt5z7ctg== +"@firebase/functions@0.4.43": + version "0.4.43" + resolved "https://registry.yarnpkg.com/@firebase/functions/-/functions-0.4.43.tgz#4307e56b4ae9b6a5c92e5227ae351896c7a0c14d" + integrity sha512-9cBGRr5JPcshtdUPpWuzsRIVPcWWNncK97QWBoFakVymPjvFNS3r0ZxD3hSUr9i05VrZdrqJfdljTNm8eEmJiA== dependencies: - "@firebase/component" "0.1.10" + "@firebase/component" "0.1.11" "@firebase/functions-types" "0.3.16" "@firebase/messaging-types" "0.4.4" isomorphic-fetch "2.2.1" @@ -1518,36 +1523,36 @@ resolved "https://registry.yarnpkg.com/@firebase/installations-types/-/installations-types-0.3.3.tgz#f2e49e73afaeb7b352250365d0d90dff0b792592" integrity sha512-XvWhPPAGeZlc+CfCA8jTt2pv19Jovi/nUV73u30QbjBbk5xci9bp5I29aBZukHsR6YNBjFCLSkLPbno4m/bLUg== -"@firebase/installations@0.4.8": - version "0.4.8" - resolved "https://registry.yarnpkg.com/@firebase/installations/-/installations-0.4.8.tgz#97220b1d88de8db504a728c97615797b54306f60" - integrity sha512-J3tyKCdZ07LR0Bw3rs4CIsWia5exGt77fdbvqnhYa6K8YfIUPFLzsGRvlFJkoIhOMXfujfnC3O/DakROOgOltg== +"@firebase/installations@0.4.9": + version "0.4.9" + resolved "https://registry.yarnpkg.com/@firebase/installations/-/installations-0.4.9.tgz#b346d1392919b45216b11f938a689e9cf44aa70e" + integrity sha512-5oY3iycidoK2MhNl4GiFYn/B9rbW69VLpH54EGEFl1UruGk464WyqC7RhJxYl8bUkFwZ4gg99MXMq/JhF0vcJA== dependencies: - "@firebase/component" "0.1.10" + "@firebase/component" "0.1.11" "@firebase/installations-types" "0.3.3" - "@firebase/util" "0.2.45" + "@firebase/util" "0.2.46" idb "3.0.2" tslib "1.11.1" -"@firebase/logger@0.2.2": - version "0.2.2" - resolved "https://registry.yarnpkg.com/@firebase/logger/-/logger-0.2.2.tgz#aea3ef8cbb131c9d3daaf8022f120f194a40509f" - integrity sha512-MbEy17Ha1w/DlLtvxG89ScQ+0+yoElGKJ1nUCQHHLjeMNsRwd2wnUPOVCsZvtBzQp8Z0GaFmD4a2iG2v91lEbA== +"@firebase/logger@0.2.3": + version "0.2.3" + resolved "https://registry.yarnpkg.com/@firebase/logger/-/logger-0.2.3.tgz#6a0eea0c2ce0a609f2965c82ce793ce5b7b32572" + integrity sha512-PrYcr1bWF+QpVnFxvNSZYBAzgL1WJFWIOvoLAfvRoXiinwqh1jbePN6lXbX7c8THaNUelEYIUOzDPdJ4IZ5+Sw== "@firebase/messaging-types@0.4.4": version "0.4.4" resolved "https://registry.yarnpkg.com/@firebase/messaging-types/-/messaging-types-0.4.4.tgz#bef66157bdd3ddaafd6d48f1c5ee973fdc385f84" integrity sha512-JGtkr+1A1Dw7+yCqQigqBfGKtq0gTCruFScBD4MVjqZHiqGIYpnQisWnpGbkzPR6aOt6iQxgwxUhHG1ulUQGeg== -"@firebase/messaging@0.6.14": - version "0.6.14" - resolved "https://registry.yarnpkg.com/@firebase/messaging/-/messaging-0.6.14.tgz#c0b57eaef8d114d40c43749023a5556b8d389d94" - integrity sha512-OuXbSGrNxhWYuHTGAjM55uTUMwsxd+S+fxj6OOyY26ezBOGj0tdPAHnAq+9wFwaItgAx8RUMjJF98Cc08PQqPA== +"@firebase/messaging@0.6.15": + version "0.6.15" + resolved "https://registry.yarnpkg.com/@firebase/messaging/-/messaging-0.6.15.tgz#e0f693338e4d6f10a28a94127765c70f643915cd" + integrity sha512-WswV3JtxAgqc0LPQtIBdMWJdMhVZu7gKF6MO5ETIpNaLZZ0QayYNu5+G9btoZz218HB/gvUp2NFX43OWAsqdZw== dependencies: - "@firebase/component" "0.1.10" - "@firebase/installations" "0.4.8" + "@firebase/component" "0.1.11" + "@firebase/installations" "0.4.9" "@firebase/messaging-types" "0.4.4" - "@firebase/util" "0.2.45" + "@firebase/util" "0.2.46" idb "3.0.2" tslib "1.11.1" @@ -1556,22 +1561,22 @@ resolved "https://registry.yarnpkg.com/@firebase/performance-types/-/performance-types-0.0.12.tgz#15fa79e296b502e21054a66c9e7ded59398fd8a7" integrity sha512-eIDF7CHetOE5sc+hCaUebEn/2Aiaju7UkgZDTl7lNQHz5fK9wJ/11HaE8WdnDr//ngS3lQAGC2RB4lAZeEWraA== -"@firebase/performance@0.3.2": - version "0.3.2" - resolved "https://registry.yarnpkg.com/@firebase/performance/-/performance-0.3.2.tgz#1366df21fefc246b0e8e1eaac35565c1951149e2" - integrity sha512-awtqXas+Z0aud73pjvf1fAXMYe8Q+TSKNKnwyeMLqAWwHMwoywKGgksqGvOeg5hGQl5H7lzcnFHJ0HybMy1b9w== +"@firebase/performance@0.3.3": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@firebase/performance/-/performance-0.3.3.tgz#5141c8e4452777238847515a53db309cbf446a58" + integrity sha512-YcoMnJWnlSQwi+eL1BDLWK7/sMlFoT7+TSJjN/C5loOZ3HWLATziGzevQSZkpajyXZ8nOylVhEGHABLHM0qqNA== dependencies: - "@firebase/component" "0.1.10" - "@firebase/installations" "0.4.8" - "@firebase/logger" "0.2.2" + "@firebase/component" "0.1.11" + "@firebase/installations" "0.4.9" + "@firebase/logger" "0.2.3" "@firebase/performance-types" "0.0.12" - "@firebase/util" "0.2.45" + "@firebase/util" "0.2.46" tslib "1.11.1" -"@firebase/polyfill@0.3.34": - version "0.3.34" - resolved "https://registry.yarnpkg.com/@firebase/polyfill/-/polyfill-0.3.34.tgz#d28394b946da4b883e086fbf2bb065b47b7a86c5" - integrity sha512-6EN02vwhX6cmyB4YswKhHkS3kMeNDxjCgf4vR3L9wYv+A5QVgAM85ifzf3mZT0tq3f2LfIsTsCIr/mlz2Swl1A== +"@firebase/polyfill@0.3.35": + version "0.3.35" + resolved "https://registry.yarnpkg.com/@firebase/polyfill/-/polyfill-0.3.35.tgz#b3acca690ab5906558494bac9025ea5f41ce18d0" + integrity sha512-O04KLyrHFXnA8Xsx+zEBlHu6iHWWhXNtOIE9WhWZO+D9onVjNEY3l7KtXvwpH/b+R1PE0Uyxy0cSGK9f5el6HQ== dependencies: core-js "3.6.5" promise-polyfill "8.1.3" @@ -1582,16 +1587,16 @@ resolved "https://registry.yarnpkg.com/@firebase/remote-config-types/-/remote-config-types-0.1.8.tgz#0c8d8a839621230053ba55704b5d1145bfe54daa" integrity sha512-K12IBHO7OD4gCW0FEqZL9zMqVAfS4+joC4YIn3bHezZfu3RL+Bw1wCb0cAD7RfDPcQxWJjxOHpce4YhuqSxPFA== -"@firebase/remote-config@0.1.19": - version "0.1.19" - resolved "https://registry.yarnpkg.com/@firebase/remote-config/-/remote-config-0.1.19.tgz#9e1f192a7434e6689fca72c3734ecfe77a8f289e" - integrity sha512-2n6bavDGO+cQsS3fs+yHthnkp5TKh8sqSD89dztt/b3/KKRb4C89r3apb6QIcQw/AlyToM+NyU6WIZyXfVAhqQ== +"@firebase/remote-config@0.1.20": + version "0.1.20" + resolved "https://registry.yarnpkg.com/@firebase/remote-config/-/remote-config-0.1.20.tgz#1193be41db9f32a5714a0fdc5f092ef05342f32a" + integrity sha512-7ib4YhhQ/yjEhMiFsYEt4lId+9mzv5CGhGccArmgCyTNSkeImS/BqAeqcOtveyFXHSv9RDHaA4/L6066LsudRQ== dependencies: - "@firebase/component" "0.1.10" - "@firebase/installations" "0.4.8" - "@firebase/logger" "0.2.2" + "@firebase/component" "0.1.11" + "@firebase/installations" "0.4.9" + "@firebase/logger" "0.2.3" "@firebase/remote-config-types" "0.1.8" - "@firebase/util" "0.2.45" + "@firebase/util" "0.2.46" tslib "1.11.1" "@firebase/storage-types@0.3.11": @@ -1599,27 +1604,27 @@ resolved "https://registry.yarnpkg.com/@firebase/storage-types/-/storage-types-0.3.11.tgz#98f6ced5460502ab12778ce71d4dc9bf0ab7f2ee" integrity sha512-EMOo5aeiJIa8eQ/VqjIa/DYlDcEJX1V84FOxmLfNWZIlmCSvcqx9E9mcNlOnoUB4iePqQjTMQRtKlIBvvEVhVg== -"@firebase/storage@0.3.32": - version "0.3.32" - resolved "https://registry.yarnpkg.com/@firebase/storage/-/storage-0.3.32.tgz#f0c9487f25381f1ae1b31b7eaf0913a45840446a" - integrity sha512-mwWI03VbTd1jP7mmeNBv7mJ96i8GUX1fSxVept5aV2FQb2pAWTKXr7Gmxg06w642I0T1+qZTRVXs8G5m8vuTjg== +"@firebase/storage@0.3.33": + version "0.3.33" + resolved "https://registry.yarnpkg.com/@firebase/storage/-/storage-0.3.33.tgz#d531aa01a4e41e0a34c80982bd62ca5a652e31db" + integrity sha512-pFhsy+LglBjyVAYd6LlyUTeHTXR4yV24eL+fLZCYOE3W23Ago/3RpkX+MaEP5ZSpdFmnV/H6R6qDClSFx1EEYA== dependencies: - "@firebase/component" "0.1.10" + "@firebase/component" "0.1.11" "@firebase/storage-types" "0.3.11" - "@firebase/util" "0.2.45" + "@firebase/util" "0.2.46" tslib "1.11.1" -"@firebase/util@0.2.45": - version "0.2.45" - resolved "https://registry.yarnpkg.com/@firebase/util/-/util-0.2.45.tgz#d52f28da8a4d7a4fa97d36202a86d5f654fbed6d" - integrity sha512-k3IqXaIgwlPg7m5lXmMUtkqA/p+LMFkFQIqBuDtdT0iyWB6kQDokyjw2Sgd3GoTybs6tWqUKFZupZpV6r73UHw== +"@firebase/util@0.2.46": + version "0.2.46" + resolved "https://registry.yarnpkg.com/@firebase/util/-/util-0.2.46.tgz#e14e5fda81df8ed22f028d4b4a0e7d646b384331" + integrity sha512-rKzQRc7YAbve+MECliis5ac6lRB1AZgOyZdoAbXaEtmGWUwnlM99uNhCekA963CaBkzlHwQG2inLf3WGW7nLFA== dependencies: tslib "1.11.1" -"@firebase/webchannel-wrapper@0.2.39": - version "0.2.39" - resolved "https://registry.yarnpkg.com/@firebase/webchannel-wrapper/-/webchannel-wrapper-0.2.39.tgz#32ce49e0ba54d831750afde59e32889bef444fd3" - integrity sha512-V5oQjtYxHlEpWdQr68ZFo8T+3NVccrTieRy8RnzYIasCeptxOxwYUG0cAAKmalgrrrfRJdXup8h5ybi3XSW9Hw== +"@firebase/webchannel-wrapper@0.2.40": + version "0.2.40" + resolved "https://registry.yarnpkg.com/@firebase/webchannel-wrapper/-/webchannel-wrapper-0.2.40.tgz#5215554d2ce1d87329241e8b08ac96e4dd1994ea" + integrity sha512-f0jc79nQvwcwhOGFAD9b5K55Cb/a0A7LKBdRyQgVFLBGm+MuSFF5Rm/5Ll8/u72hJhbdICQj+xYl2uIuCMdXFQ== "@grpc/grpc-js@0.8.1": version "0.8.1" @@ -2097,10 +2102,10 @@ "@svgr/plugin-svgo" "^4.3.1" loader-utils "^1.2.3" -"@tinymce/tinymce-react@^3.5.0": - version "3.5.0" - resolved "https://registry.yarnpkg.com/@tinymce/tinymce-react/-/tinymce-react-3.5.0.tgz#5017be56aeab1077f09d3f74a386883e5524a33f" - integrity sha512-sZPerYmSWQcdk7F9KEvCC3/kPNZ9Bb+dk8rS0RoYyYql/gqgNpLpycC+CC/KhgT0wDaYuRoCcdV1DVZGam+oOg== +"@tinymce/tinymce-react@^3.6.0": + version "3.6.0" + resolved "https://registry.yarnpkg.com/@tinymce/tinymce-react/-/tinymce-react-3.6.0.tgz#6e33e89b7bb0240c4ffa892a8e1924688f479b4b" + integrity sha512-XSyAx9Md9+Ghl3UK0YtBQxaS2dCepqtOKTjYmBS4xTAzSu1UABd44WT84B8CUCd/bdT0fv1Pd51dSbpgJ8713w== dependencies: prop-types "^15.6.2" @@ -2660,49 +2665,49 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: "@types/color-name" "^1.1.1" color-convert "^2.0.1" -antd@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/antd/-/antd-4.2.0.tgz#1b6c9cb1d534b33e83a24052d9a7ccbaba19d138" - integrity sha512-QEVhf2ESoBGD4Ef5UHVqHtKiiGEARQZuYLx+qcHbfZf3bLwsRHABgArIK0xsJyyoIts0dgwEBl5d8iI1+TVaVg== +antd@^4.2.2: + version "4.2.2" + resolved "https://registry.yarnpkg.com/antd/-/antd-4.2.2.tgz#223ea6b3b3b5ce1a47d390f271c1b145ea9c5c15" + integrity sha512-X+b6LfcuF+jR1VyGahvnYtER9BmjrKXW9xCCmHkVrMK5G84eeptbzxy0N3s58dWcpvyUJNmzTrf/EOsUtR05kg== dependencies: + "@ant-design/css-animation" "^1.7.2" "@ant-design/icons" "^4.1.0" "@ant-design/react-slick" "~0.25.5" array-tree-filter "^2.1.0" classnames "~2.2.6" copy-to-clipboard "^3.2.0" - css-animation "^1.5.0" lodash "^4.17.13" - moment "^2.24.0" + moment "~2.25.3" omit.js "^1.0.2" prop-types "^15.7.2" raf "^3.4.1" - rc-animate "~2.11.0" + rc-animate "~3.0.0" rc-cascader "~1.0.0" rc-checkbox "~2.2.0" - rc-collapse "~1.11.3" - rc-dialog "~7.6.0" - rc-drawer "~3.1.1" + rc-collapse "~2.0.0" + rc-dialog "~7.7.0" + rc-drawer "~3.2.0" rc-dropdown "~3.0.0" rc-field-form "~1.2.0" rc-input-number "~4.6.1" rc-mentions "~1.1.0" - rc-menu "~8.0.1" - rc-notification "~4.0.0" + rc-menu "~8.1.0" + rc-notification "~4.3.0" rc-pagination "~2.2.0" rc-picker "~1.4.0" rc-progress "~2.5.0" rc-rate "~2.6.0" rc-resize-observer "^0.2.0" - rc-select "~10.2.0" + rc-select "~10.3.0" rc-slider "~9.2.3" - rc-steps "~3.5.0" - rc-switch "~1.9.0" - rc-table "~7.5.2" + rc-steps "~3.6.0" + rc-switch "~2.0.0" + rc-table "~7.5.3" rc-tabs "~10.1.1" rc-tooltip "~4.0.2" - rc-tree "~3.1.0" + rc-tree "~3.2.0" rc-tree-select "~3.1.0" - rc-trigger "~4.0.0" + rc-trigger "~4.1.0" rc-upload "~3.0.4" rc-util "^4.20.0" rc-virtual-list "^1.1.0" @@ -2734,14 +2739,14 @@ aphrodite@^0.5.0: asap "^2.0.3" inline-style-prefixer "^2.0.0" -apollo-boost@^0.4.4: - version "0.4.7" - resolved "https://registry.yarnpkg.com/apollo-boost/-/apollo-boost-0.4.7.tgz#b0680ab0893e3f8b1ab1058dcfa2b00cb6440d79" - integrity sha512-jfc3aqO0vpCV+W662EOG5gq4AH94yIsvSgAUuDvS3o/Z+8Joqn4zGC9CgLCDHusK30mFgtsEgwEe0pZoedohsQ== +apollo-boost@^0.4.8: + version "0.4.8" + resolved "https://registry.yarnpkg.com/apollo-boost/-/apollo-boost-0.4.8.tgz#29d416df3e6a46db99af9ed1915054fc8bea232d" + integrity sha512-4HTz3Z9H49sQruXM3sy2tDPkvpUmjCgqqKGIYTJtMTbvwt1TuEQXJcRDxEUiY+c7rsYAiGJNB2EAOXIqTXMSxQ== dependencies: - apollo-cache "^1.3.4" - apollo-cache-inmemory "^1.6.5" - apollo-client "^2.6.7" + apollo-cache "^1.3.5" + apollo-cache-inmemory "^1.6.6" + apollo-client "^2.6.9" apollo-link "^1.0.6" apollo-link-error "^1.0.3" apollo-link-http "^1.3.1" @@ -2749,34 +2754,34 @@ apollo-boost@^0.4.4: ts-invariant "^0.4.0" tslib "^1.10.0" -apollo-cache-inmemory@^1.6.5: - version "1.6.5" - resolved "https://registry.yarnpkg.com/apollo-cache-inmemory/-/apollo-cache-inmemory-1.6.5.tgz#2ccaa3827686f6ed7fb634203dbf2b8d7015856a" - integrity sha512-koB76JUDJaycfejHmrXBbWIN9pRKM0Z9CJGQcBzIOtmte1JhEBSuzsOUu7NQgiXKYI4iGoMREcnaWffsosZynA== +apollo-cache-inmemory@^1.6.6: + version "1.6.6" + resolved "https://registry.yarnpkg.com/apollo-cache-inmemory/-/apollo-cache-inmemory-1.6.6.tgz#56d1f2a463a6b9db32e9fa990af16d2a008206fd" + integrity sha512-L8pToTW/+Xru2FFAhkZ1OA9q4V4nuvfoPecBM34DecAugUZEBhI2Hmpgnzq2hTKZ60LAMrlqiASm0aqAY6F8/A== dependencies: - apollo-cache "^1.3.4" - apollo-utilities "^1.3.3" + apollo-cache "^1.3.5" + apollo-utilities "^1.3.4" optimism "^0.10.0" ts-invariant "^0.4.0" tslib "^1.10.0" -apollo-cache@1.3.4, apollo-cache@^1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/apollo-cache/-/apollo-cache-1.3.4.tgz#0c9f63c793e1cd6e34c450f7668e77aff58c9a42" - integrity sha512-7X5aGbqaOWYG+SSkCzJNHTz2ZKDcyRwtmvW4mGVLRqdQs+HxfXS4dUS2CcwrAj449se6tZ6NLUMnjko4KMt3KA== +apollo-cache@^1.3.5: + version "1.3.5" + resolved "https://registry.yarnpkg.com/apollo-cache/-/apollo-cache-1.3.5.tgz#9dbebfc8dbe8fe7f97ba568a224bca2c5d81f461" + integrity sha512-1XoDy8kJnyWY/i/+gLTEbYLnoiVtS8y7ikBr/IfmML4Qb+CM7dEEbIUOjnY716WqmZ/UpXIxTfJsY7rMcqiCXA== dependencies: - apollo-utilities "^1.3.3" + apollo-utilities "^1.3.4" tslib "^1.10.0" -apollo-client@^2.6.7: - version "2.6.8" - resolved "https://registry.yarnpkg.com/apollo-client/-/apollo-client-2.6.8.tgz#01cebc18692abf90c6b3806414e081696b0fa537" - integrity sha512-0zvJtAcONiozpa5z5zgou83iEKkBaXhhSSXJebFHRXs100SecDojyUWKjwTtBPn9HbM6o5xrvC5mo9VQ5fgAjw== +apollo-client@^2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/apollo-client/-/apollo-client-2.6.9.tgz#b04e4233972bb7cb8b2ad7a8c5901490fd50d476" + integrity sha512-l3z4Ddd82p5ezZWOlOd0TO+KyBh/EDZePNeB3fy3sjr/crvpCxNnQDdGfVadrzFX+DXRa8r8zSWANyWSDDUpdg== dependencies: "@types/zen-observable" "^0.8.0" - apollo-cache "1.3.4" + apollo-cache "^1.3.5" apollo-link "^1.0.0" - apollo-utilities "1.3.3" + apollo-utilities "^1.3.4" symbol-observable "^1.0.2" ts-invariant "^0.4.0" tslib "^1.10.0" @@ -2877,7 +2882,7 @@ apollo-link@^1.2.14: tslib "^1.9.3" zen-observable-ts "^0.8.21" -apollo-utilities@1.3.3, apollo-utilities@^1.3.0, apollo-utilities@^1.3.3: +apollo-utilities@^1.3.0: version "1.3.3" resolved "https://registry.yarnpkg.com/apollo-utilities/-/apollo-utilities-1.3.3.tgz#f1854715a7be80cd810bc3ac95df085815c0787c" integrity sha512-F14aX2R/fKNYMvhuP2t9GD9fggID7zp5I96MF5QeKYWDWTrkRdHRp4+SVfXUVN+cXOaB/IebfvRtzPf25CM0zw== @@ -2887,6 +2892,16 @@ apollo-utilities@1.3.3, apollo-utilities@^1.3.0, apollo-utilities@^1.3.3: ts-invariant "^0.4.0" tslib "^1.10.0" +apollo-utilities@^1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/apollo-utilities/-/apollo-utilities-1.3.4.tgz#6129e438e8be201b6c55b0f13ce49d2c7175c9cf" + integrity sha512-pk2hiWrCXMAy2fRPwEyhvka+mqwzeP60Jr1tRYi5xru+3ko94HI9o6lK0CT33/w4RDlxWchmdhDCrvdr+pHCig== + dependencies: + "@wry/equality" "^0.1.2" + fast-json-stable-stringify "^2.0.0" + ts-invariant "^0.4.0" + tslib "^1.10.0" + aproba@^1.0.3, aproba@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" @@ -4070,7 +4085,7 @@ commondir@^1.0.1: resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= -component-classes@^1.2.5, component-classes@^1.2.6: +component-classes@^1.2.5: version "1.2.6" resolved "https://registry.yarnpkg.com/component-classes/-/component-classes-1.2.6.tgz#c642394c3618a4d8b0b8919efccbbd930e5cd691" integrity sha1-xkI5TDYYpNiwuJGe/Mu9kw5c1pE= @@ -4357,7 +4372,7 @@ crypto-browserify@^3.11.0: randombytes "^2.0.0" randomfill "^1.0.3" -css-animation@1.x, css-animation@^1.3.2, css-animation@^1.5.0: +css-animation@^1.3.2: version "1.6.1" resolved "https://registry.yarnpkg.com/css-animation/-/css-animation-1.6.1.tgz#162064a3b0d51f958b7ff37b3d6d4de18e17039e" integrity sha512-/48+/BaEaHRY6kNQ2OIPzKf9A6g8WjZYjhiNDNuIVbsm5tXCGIAsHDjB4Xu1C4vXJtUWZo26O68OQkDpNBaPog== @@ -5909,25 +5924,25 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" -firebase@^7.14.2: - version "7.14.2" - resolved "https://registry.yarnpkg.com/firebase/-/firebase-7.14.2.tgz#869013ce7ed1b44f1e85521d27863481f1358d6f" - integrity sha512-B06h1sXe9ODcoHv0EjF4+CEcm2Gl+8eSL35iAYn8ZRi5Qzivlge312iSROLwGeIIO2QOA+2ap9D6/X52eLIAOg== +firebase@^7.14.3: + version "7.14.3" + resolved "https://registry.yarnpkg.com/firebase/-/firebase-7.14.3.tgz#dfe6fa3e5982a6d6d6d44bfc50dba23568a5a777" + integrity sha512-qExwE/vhf/l6Mf8ES3IFX1SB6/DysKPtvrIWnIuswmRMeSA9eERwrqp4Pom4NHhzjBP1jOmlIPKeOplsNwMlOQ== dependencies: - "@firebase/analytics" "0.3.3" - "@firebase/app" "0.6.2" + "@firebase/analytics" "0.3.4" + "@firebase/app" "0.6.3" "@firebase/app-types" "0.6.0" - "@firebase/auth" "0.14.4" - "@firebase/database" "0.6.1" - "@firebase/firestore" "1.14.2" - "@firebase/functions" "0.4.42" - "@firebase/installations" "0.4.8" - "@firebase/messaging" "0.6.14" - "@firebase/performance" "0.3.2" - "@firebase/polyfill" "0.3.34" - "@firebase/remote-config" "0.1.19" - "@firebase/storage" "0.3.32" - "@firebase/util" "0.2.45" + "@firebase/auth" "0.14.5" + "@firebase/database" "0.6.2" + "@firebase/firestore" "1.14.3" + "@firebase/functions" "0.4.43" + "@firebase/installations" "0.4.9" + "@firebase/messaging" "0.6.15" + "@firebase/performance" "0.3.3" + "@firebase/polyfill" "0.3.35" + "@firebase/remote-config" "0.1.20" + "@firebase/storage" "0.3.33" + "@firebase/util" "0.2.46" flat-cache@^2.0.1: version "2.0.1" @@ -6319,11 +6334,6 @@ growly@^1.3.0: resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= -gud@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/gud/-/gud-1.0.0.tgz#a489581b17e6a70beca9abe3ae57de7a499852c0" - integrity sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw== - gzip-size@5.1.1, gzip-size@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-5.1.1.tgz#cb9bee692f87c0612b232840a873904e4c135274" @@ -6477,7 +6487,7 @@ hoist-non-react-statics@^2.3.1: resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz#c5903cf409c0dfd908f388e619d86b9c1174cb47" integrity sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw== -hoist-non-react-statics@^3.0.0, hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.0: +hoist-non-react-statics@^3.0.0, hoist-non-react-statics@^3.1.0, hoist-non-react-statics@^3.3.0, hoist-non-react-statics@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== @@ -8435,14 +8445,13 @@ mimic-fn@^2.0.0, mimic-fn@^2.1.0: resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== -mini-create-react-context@^0.3.0: - version "0.3.2" - resolved "https://registry.yarnpkg.com/mini-create-react-context/-/mini-create-react-context-0.3.2.tgz#79fc598f283dd623da8e088b05db8cddab250189" - integrity sha512-2v+OeetEyliMt5VHMXsBhABoJ0/M4RCe7fatd/fBy6SMiKazUSEt3gxxypfnk2SHMkdBYvorHRoQxuGoiwbzAw== +mini-create-react-context@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/mini-create-react-context/-/mini-create-react-context-0.4.0.tgz#df60501c83151db69e28eac0ef08b4002efab040" + integrity sha512-b0TytUgFSbgFJGzJqXPKCFCBWigAjpjo+Fl7Vf7ZbKRDptszpppKxXH6DRXEABZ/gcEQczeb0iZ7JvL8e8jjCA== dependencies: - "@babel/runtime" "^7.4.0" - gud "^1.0.0" - tiny-warning "^1.0.2" + "@babel/runtime" "^7.5.5" + tiny-warning "^1.0.3" mini-css-extract-plugin@0.9.0: version "0.9.0" @@ -8464,6 +8473,15 @@ mini-store@^2.0.0: react-lifecycles-compat "^3.0.4" shallowequal "^1.0.2" +mini-store@^3.0.1: + version "3.0.3" + resolved "https://registry.yarnpkg.com/mini-store/-/mini-store-3.0.3.tgz#3024b2baff96d54d426fbcf5db2c993291bf836f" + integrity sha512-EHpcxqITc3UIEC9iR8DCWzKIFpz8IgIMw+dNKJ8tJ7mKSHhPfa3xDLFyh1fv0NeA89v2Vb7nIwd+3UGdLZUZ7A== + dependencies: + hoist-non-react-statics "^3.3.2" + prop-types "^15.6.0" + shallowequal "^1.0.2" + minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" @@ -8575,6 +8593,11 @@ moment@^2.24.0: resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b" integrity sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg== +moment@~2.25.3: + version "2.25.3" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.25.3.tgz#252ff41319cf41e47761a1a88cab30edfe9808c0" + integrity sha512-PuYv0PHxZvzc15Sp8ybUCoQ+xpyPWvjOuK72a5ovzp2LI32rJXOiIfyoFoYvG3s6EwwrdkMyWuRiEHSZRLJNdg== + moo@^0.5.0: version "0.5.1" resolved "https://registry.yarnpkg.com/moo/-/moo-0.5.1.tgz#7aae7f384b9b09f620b6abf6f74ebbcd1b65dbc4" @@ -10300,7 +10323,7 @@ prop-types-exact@^1.2.0: object.assign "^4.1.0" reflect.ownkeys "^0.2.0" -prop-types@15.x, prop-types@^15.0.0, prop-types@^15.5.10, prop-types@^15.5.6, prop-types@^15.5.7, prop-types@^15.5.8, prop-types@^15.5.9, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: +prop-types@15.x, prop-types@^15.0.0, prop-types@^15.5.10, prop-types@^15.5.8, prop-types@^15.5.9, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: version "15.7.2" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== @@ -10510,7 +10533,17 @@ rc-align@^3.0.0-rc.0: rc-util "^4.12.0" resize-observer-polyfill "^1.5.1" -rc-animate@2.x, rc-animate@^2.10.0, rc-animate@^2.10.1, rc-animate@^2.10.2, rc-animate@^2.9.2: +rc-animate@3.x, rc-animate@^3.0.0, rc-animate@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/rc-animate/-/rc-animate-3.0.0.tgz#f76d7051136b7d650fb3d29366a160e95a369c0a" + integrity sha512-+ANeyCei4lWSJHWTcocywdYAy6lpRdBva/7Fs3nBBiAngW/W+Gmx+gQEcsmcgQBqziWUYnR91Bk12ltR3GBHPA== + dependencies: + "@ant-design/css-animation" "^1.7.2" + classnames "^2.2.6" + raf "^3.4.0" + rc-util "^4.15.3" + +rc-animate@^2.10.0, rc-animate@^2.10.1, rc-animate@^2.10.2, rc-animate@^2.9.2: version "2.10.3" resolved "https://registry.yarnpkg.com/rc-animate/-/rc-animate-2.10.3.tgz#163d5e29281a4ff82d53ee7918eeeac856b756f9" integrity sha512-A9qQ5Y8BLlM7EhuCO3fWb/dChndlbWtY/P5QvPqBU7h4r5Q2QsvsbpTGgdYZATRDZbTRnJXXfVk9UtlyS7MBLg== @@ -10523,19 +10556,6 @@ rc-animate@2.x, rc-animate@^2.10.0, rc-animate@^2.10.1, rc-animate@^2.10.2, rc-a rc-util "^4.15.3" react-lifecycles-compat "^3.0.4" -rc-animate@~2.11.0: - version "2.11.1" - resolved "https://registry.yarnpkg.com/rc-animate/-/rc-animate-2.11.1.tgz#2666eeb6f1f2a495a13b2af09e236712278fdb2c" - integrity sha512-1NyuCGFJG/0Y+9RKh5y/i/AalUCA51opyyS/jO2seELpgymZm2u9QV3xwODwEuzkmeQ1BDPxMLmYLcTJedPlkQ== - dependencies: - babel-runtime "6.x" - classnames "^2.2.6" - css-animation "^1.3.2" - prop-types "15.x" - raf "^3.4.0" - rc-util "^4.15.3" - react-lifecycles-compat "^3.0.4" - rc-cascader@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/rc-cascader/-/rc-cascader-1.0.1.tgz#770de1e1fa7bd559aabd4d59e525819b8bc809b7" @@ -10554,36 +10574,33 @@ rc-checkbox@~2.2.0: babel-runtime "^6.23.0" classnames "2.x" -rc-collapse@~1.11.3: - version "1.11.8" - resolved "https://registry.yarnpkg.com/rc-collapse/-/rc-collapse-1.11.8.tgz#66a40089d469519e9424009ab1c927e214041d80" - integrity sha512-8EhfPyScTYljkbRuIoHniSwZagD5UPpZ3CToYgoNYWC85L2qCbPYF7+OaC713FOrIkp6NbfNqXsITNxmDAmxog== +rc-collapse@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/rc-collapse/-/rc-collapse-2.0.0.tgz#08c5942f82005b4342ced02d983581e4c41cd324" + integrity sha512-R5+Ge1uzwK9G1wZPRPhqQsed4FXTDmU0BKzsqfNBtZdk/wd+yey8ZutmJmSozYc5hQwjPkCvJHV7gOIRZKIlJg== dependencies: + "@ant-design/css-animation" "^1.7.2" classnames "2.x" - css-animation "1.x" - prop-types "^15.5.6" - rc-animate "2.x" + rc-animate "3.x" react-is "^16.7.0" - react-lifecycles-compat "^3.0.4" shallowequal "^1.1.0" -rc-dialog@~7.6.0: - version "7.6.1" - resolved "https://registry.yarnpkg.com/rc-dialog/-/rc-dialog-7.6.1.tgz#11545ccc0b945934fa76079726e0d853e52d705f" - integrity sha512-KUKf+2eZ4YL+lnXMG3hR4ZtIhC9glfH27NtTVz3gcoDIPAf3uUvaXVRNoDCiSi+OGKLyIb/b6EoidFh6nQC5Wg== +rc-dialog@~7.7.0: + version "7.7.0" + resolved "https://registry.yarnpkg.com/rc-dialog/-/rc-dialog-7.7.0.tgz#c5ca3e04fe8f8b9358505231db0862aa2dfb0e85" + integrity sha512-WVLnbpP+9YCaDjFpX03PdGHNtEzUmVPfc047/XHIBxrI2n9gcog5PhHHJzewi8ZJrFj5sWi+1OWakf7vwaCfJg== dependencies: babel-runtime "6.x" - rc-animate "2.x" + rc-animate "3.x" rc-util "^4.16.1" -rc-drawer@~3.1.1: - version "3.1.3" - resolved "https://registry.yarnpkg.com/rc-drawer/-/rc-drawer-3.1.3.tgz#cbcb04d4c07f0b66f2ece11d847f4a1bd80ea0b7" - integrity sha512-2z+RdxmzXyZde/1OhVMfDR1e/GBswFeWSZ7FS3Fdd0qhgVdpV1wSzILzzxRaT481ItB5hOV+e8pZT07vdJE8kg== +rc-drawer@~3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/rc-drawer/-/rc-drawer-3.2.0.tgz#6d9bba2fb1647942840dad61f36b9c88b753f565" + integrity sha512-ekt5K2pHIQihByupUooJ7kVmpmAyHrGy2T9h+AlPwhIL9xemK+RVRq3RbOv1V03BqNPCDx4sWV5sWiAhGMUctw== dependencies: classnames "^2.2.6" rc-util "^4.16.1" - react-lifecycles-compat "^3.0.4" rc-dropdown@~3.0.0: version "3.0.2" @@ -10631,7 +10648,7 @@ rc-mentions@~1.1.0: rc-trigger "^4.0.0" rc-util "^4.6.0" -rc-menu@^8.0.1, rc-menu@~8.0.1: +rc-menu@^8.0.1: version "8.0.2" resolved "https://registry.yarnpkg.com/rc-menu/-/rc-menu-8.0.2.tgz#ce8dacad615c4cadb47c018be3a0791248b04d14" integrity sha512-0zae6+LVQf+XTBepSMwwn2Wu+CvRf0eAVh62xl0UcjFBvyA0uGz+dAE0SVR6oUA0q9X+/G14CV1ItZFdwaP6/g== @@ -10645,13 +10662,27 @@ rc-menu@^8.0.1, rc-menu@~8.0.1: scroll-into-view-if-needed "^2.2.20" shallowequal "^1.1.0" -rc-notification@~4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/rc-notification/-/rc-notification-4.0.0.tgz#ffe59783d6738003972dde8b9658f1acd469cd2c" - integrity sha512-In9FimkJY+JSIq3/eopPfBpQQr2Zugq5i9Aw9vdiNCGCsAsSO9bGq2dPsn8bamOydNrhc3djljGfmxUUMbcZnA== +rc-menu@~8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/rc-menu/-/rc-menu-8.1.0.tgz#7817f7699b7b2932e70bde8028c285c7a3076791" + integrity sha512-dTVlwf1klEeIr+74Bk0Uovbw3oidXlHBLfA0YhDIgKcXeDIfk18a66200GMWYAFajJPTGaRaqnyVVRCslOHuDg== dependencies: classnames "2.x" - rc-animate "2.x" + mini-store "^3.0.1" + rc-animate "^3.0.0" + rc-trigger "^4.0.0" + rc-util "^4.13.0" + resize-observer-polyfill "^1.5.0" + scroll-into-view-if-needed "^2.2.20" + shallowequal "^1.1.0" + +rc-notification@~4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/rc-notification/-/rc-notification-4.3.0.tgz#57b00e117417d28e7ee6b837ad9eb8b402e39fff" + integrity sha512-7l7SRcp9cLNuW8OJuyIp88vLw+MLBehCbagRMrt3zXOeHdoTBtM4vtBd+JO4ZTb55Xk+omE9m1+3q2Jjowi/rA== + dependencies: + classnames "2.x" + rc-animate "3.x" rc-util "^4.0.4" rc-pagination@~2.2.0: @@ -10709,13 +10740,13 @@ rc-select@^10.1.0: rc-virtual-list "^1.1.0" warning "^4.0.3" -rc-select@~10.2.0: - version "10.2.4" - resolved "https://registry.yarnpkg.com/rc-select/-/rc-select-10.2.4.tgz#f293c93982c530e54e244d23f5c1dd8451189550" - integrity sha512-PtfAHQRXof5gX1qEYQc8GIgroajtzU3mcMGbqM1aE1jqaZ4r+p0GJy3rabXoNANsKH7jUV5+zYJb5VhTxj2vmQ== +rc-select@~10.3.0: + version "10.3.2" + resolved "https://registry.yarnpkg.com/rc-select/-/rc-select-10.3.2.tgz#c3dd7d101e39b6815ff66c6fccf5cdae80437b40" + integrity sha512-RKg5OwwclJbYwru7SDC5JeBIX3Nnhis9JwJaSZES3bw3tel6fzlHqTDeyY75bst7c0mF6TqcDvU6TC1Lphu/8A== dependencies: classnames "2.x" - rc-animate "^2.10.0" + rc-animate "^3.0.0" rc-trigger "^4.0.0" rc-util "^4.20.0" rc-virtual-list "^1.1.2" @@ -10733,38 +10764,30 @@ rc-slider@~9.2.3: shallowequal "^1.1.0" warning "^4.0.3" -rc-steps@~3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/rc-steps/-/rc-steps-3.5.0.tgz#36b2a7f1f49907b0d90363884b18623caf9fb600" - integrity sha512-2Vkkrpa7PZbg7qPsqTNzVDov4u78cmxofjjnIHiGB9+9rqKS8oTLPzbW2uiWDr3Lk+yGwh8rbpGO1E6VAgBCOg== +rc-steps@~3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/rc-steps/-/rc-steps-3.6.0.tgz#5a377f6a0a7eacd3152bb96bdf425b654b4a552e" + integrity sha512-UH0ggF5UB4QBoAXeJH6JUSnPVg3H9z3o3nyf6yZ5QYXcsFn4tIJyjtnE9h+yhQIBQDVzwNY1r5yhW2PYrzO1tw== dependencies: - babel-runtime "^6.23.0" classnames "^2.2.3" lodash "^4.17.5" - prop-types "^15.5.7" -rc-switch@~1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/rc-switch/-/rc-switch-1.9.0.tgz#ab2b878f2713c681358a453391976c9b95b290f7" - integrity sha512-Isas+egaK6qSk64jaEw4GgPStY4umYDbT7ZY93bZF1Af+b/JEsKsJdNOU2qG3WI0Z6tXo2DDq0kJCv8Yhu0zww== +rc-switch@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/rc-switch/-/rc-switch-2.0.0.tgz#4a29c8dc13a1a9d59259c87f1612137cf497a302" + integrity sha512-x4ypcYbFh5uQY26GdAl7xvwbdVYp4IRZp63rguH41Jd697y63ESn2hlgo6CQp9AyAAu4puwQwNqK2wFBezjicg== dependencies: classnames "^2.2.1" - prop-types "^15.5.6" - react-lifecycles-compat "^3.0.4" -rc-table@~7.5.2: - version "7.5.3" - resolved "https://registry.yarnpkg.com/rc-table/-/rc-table-7.5.3.tgz#1e706049540f3aaeaf1986101283b696ea03e1e3" - integrity sha512-eQ+dyD66Rc/QEPSagkzkTtx6+unbIEf6zLPlKfP4iUgxTiXF7sLlmYQyQqbuFQZKE+qD1qow4HLPkY3xpUUqGg== +rc-table@~7.5.3: + version "7.5.9" + resolved "https://registry.yarnpkg.com/rc-table/-/rc-table-7.5.9.tgz#5d3d19c06e8e5760922dd91f0507a76f469af952" + integrity sha512-DxsTnHqASWWLC6c1wngPkmL/wGx3g1FbxY1oku4L7wHYGmH2tBGWL5nCjJW1hJZoof3ll9bAnrBg3hVNhYcirQ== dependencies: classnames "^2.2.5" - component-classes "^1.2.6" - lodash "^4.17.5" - prop-types "^15.5.8" raf "^3.4.1" rc-resize-observer "^0.2.0" rc-util "^4.20.1" - react-lifecycles-compat "^3.0.2" shallowequal "^1.1.0" rc-tabs@~10.1.1: @@ -10795,7 +10818,7 @@ rc-tree-select@~3.1.0: rc-tree "^3.1.0" rc-util "^4.17.0" -rc-tree@^3.1.0, rc-tree@~3.1.0: +rc-tree@^3.1.0: version "3.1.2" resolved "https://registry.yarnpkg.com/rc-tree/-/rc-tree-3.1.2.tgz#14aae3167a6189ff401082d8a17adb8d8df00843" integrity sha512-iK5q8Fmr8iR1Q/qq6flJd2SeCZc/D7aZryFY2yoqEAE01cO3NmY3RIN20IXF0rET/7SuFRW7pq+ClU1VLLdPOQ== @@ -10807,7 +10830,17 @@ rc-tree@^3.1.0, rc-tree@~3.1.0: rc-virtual-list "^1.1.0" react-lifecycles-compat "^3.0.4" -rc-trigger@^4.0.0, rc-trigger@~4.0.0: +rc-tree@~3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/rc-tree/-/rc-tree-3.2.2.tgz#9822c4929570156a2170037a4faeb010cae10702" + integrity sha512-eF4vJJpMnTmPufxplZ2xg+P3ogfFoUfZkZXV2qasC6JSTf+13jB7pA1xXjCwJ86V+7PqEGUsE/mljLusng0XEA== + dependencies: + classnames "2.x" + rc-animate "^3.0.0" + rc-util "^4.11.0" + rc-virtual-list "^1.1.0" + +rc-trigger@^4.0.0: version "4.0.2" resolved "https://registry.yarnpkg.com/rc-trigger/-/rc-trigger-4.0.2.tgz#42fe7bdb6a5b34035e20fa9ebfad69ec948b56be" integrity sha512-to5S1NhK10rWHIgQpoQdwIhuDc2Ok4R4/dh5NLrDt6C+gqkohsdBCYiPk97Z+NwGhRU8N+dbf251bivX8DkzQg== @@ -10819,6 +10852,17 @@ rc-trigger@^4.0.0, rc-trigger@~4.0.0: rc-animate "^2.10.2" rc-util "^4.20.0" +rc-trigger@~4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/rc-trigger/-/rc-trigger-4.1.0.tgz#6b13a41161716d6353e6324a01055efacb07cf71" + integrity sha512-EyQjO6aHDAPRvJeyPmg/yVL/8Bp7oA6Lf+4Ay2OyOwhZLzHHN8m+F2XrVWKpjg04eBXbuGBNiucIqv1d/ddE3w== + dependencies: + classnames "^2.2.6" + raf "^3.4.1" + rc-align "^3.0.0-rc.0" + rc-animate "^3.0.0" + rc-util "^4.20.0" + rc-upload@~3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/rc-upload/-/rc-upload-3.0.4.tgz#5fd8ba9eefc1e466225240ae997404693d86fa09" @@ -11151,29 +11195,29 @@ react-resizable@^1.10.1, react-resizable@^1.9.0: prop-types "15.x" react-draggable "^4.0.3" -react-router-dom@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.1.2.tgz#06701b834352f44d37fbb6311f870f84c76b9c18" - integrity sha512-7BPHAaIwWpZS074UKaw1FjVdZBSVWEk8IuDXdB+OkLb8vd/WRQIpA4ag9WQk61aEfQs47wHyjWUoUGGZxpQXew== +react-router-dom@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.2.0.tgz#9e65a4d0c45e13289e66c7b17c7e175d0ea15662" + integrity sha512-gxAmfylo2QUjcwxI63RhQ5G85Qqt4voZpUXSEqCwykV0baaOTQDR1f0PmY8AELqIyVc0NEZUj0Gov5lNGcXgsA== dependencies: "@babel/runtime" "^7.1.2" history "^4.9.0" loose-envify "^1.3.1" prop-types "^15.6.2" - react-router "5.1.2" + react-router "5.2.0" tiny-invariant "^1.0.2" tiny-warning "^1.0.0" -react-router@5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.1.2.tgz#6ea51d789cb36a6be1ba5f7c0d48dd9e817d3418" - integrity sha512-yjEuMFy1ONK246B+rsa0cUam5OeAQ8pyclRDgpxuSCrAlJ1qN9uZ5IgyKC7gQg0w8OM50NXHEegPh/ks9YuR2A== +react-router@5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.2.0.tgz#424e75641ca8747fbf76e5ecca69781aa37ea293" + integrity sha512-smz1DUuFHRKdcJC0jobGo8cVbhO3x50tCL4icacOlcwDOEQPq4TMqwx3sY1TP+DvtTgz4nm3thuo7A+BK2U0Dw== dependencies: "@babel/runtime" "^7.1.2" history "^4.9.0" hoist-non-react-statics "^3.1.0" loose-envify "^1.3.1" - mini-create-react-context "^0.3.0" + mini-create-react-context "^0.4.0" path-to-regexp "^1.7.0" prop-types "^15.6.2" react-is "^16.6.0" @@ -12933,7 +12977,7 @@ tiny-invariant@^1.0.2: resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.1.0.tgz#634c5f8efdc27714b7f386c35e6760991d230875" integrity sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw== -tiny-warning@^1.0.0, tiny-warning@^1.0.2: +tiny-warning@^1.0.0, tiny-warning@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754" integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA== diff --git a/hasura/migrations/1589302634242_update_permission_user_public_table_templates/down.yaml b/hasura/migrations/1589302634242_update_permission_user_public_table_templates/down.yaml new file mode 100644 index 000000000..f82fe23ab --- /dev/null +++ b/hasura/migrations/1589302634242_update_permission_user_public_table_templates/down.yaml @@ -0,0 +1,6 @@ +- args: + role: user + table: + name: templates + schema: public + type: drop_insert_permission diff --git a/hasura/migrations/1589302634242_update_permission_user_public_table_templates/up.yaml b/hasura/migrations/1589302634242_update_permission_user_public_table_templates/up.yaml new file mode 100644 index 000000000..a02ba11ce --- /dev/null +++ b/hasura/migrations/1589302634242_update_permission_user_public_table_templates/up.yaml @@ -0,0 +1,29 @@ +- args: + permission: + allow_upsert: true + check: + _or: + - bodyshopid: + _is_null: true + - bodyshop: + associations: + _and: + - user: + authid: + _eq: X-Hasura-User-Id + - active: + _eq: true + columns: + - bodyshopid + - html + - name + - query + localPresets: + - key: "" + value: "" + set: {} + role: user + table: + name: templates + schema: public + type: create_insert_permission diff --git a/hasura/migrations/1589303851671_update_permission_user_public_table_templates/down.yaml b/hasura/migrations/1589303851671_update_permission_user_public_table_templates/down.yaml new file mode 100644 index 000000000..6bffc1e0e --- /dev/null +++ b/hasura/migrations/1589303851671_update_permission_user_public_table_templates/down.yaml @@ -0,0 +1,6 @@ +- args: + role: user + table: + name: templates + schema: public + type: drop_delete_permission diff --git a/hasura/migrations/1589303851671_update_permission_user_public_table_templates/up.yaml b/hasura/migrations/1589303851671_update_permission_user_public_table_templates/up.yaml new file mode 100644 index 000000000..ea9c5ad70 --- /dev/null +++ b/hasura/migrations/1589303851671_update_permission_user_public_table_templates/up.yaml @@ -0,0 +1,19 @@ +- args: + permission: + filter: + _or: + - bodyshopid: + _is_null: false + - bodyshop: + associations: + _and: + - user: + authid: + _eq: X-Hasura-User-Id + - active: + _eq: true + role: user + table: + name: templates + schema: public + type: create_delete_permission diff --git a/hasura/migrations/metadata.yaml b/hasura/migrations/metadata.yaml index 2c6ac0874..0fec3b3a3 100644 --- a/hasura/migrations/metadata.yaml +++ b/hasura/migrations/metadata.yaml @@ -2991,6 +2991,26 @@ tables: - name: bodyshop using: foreign_key_constraint_on: bodyshopid + insert_permissions: + - role: user + permission: + check: + _or: + - bodyshopid: + _is_null: true + - bodyshop: + associations: + _and: + - user: + authid: + _eq: X-Hasura-User-Id + - active: + _eq: true + columns: + - bodyshopid + - html + - name + - query select_permissions: - role: user permission: @@ -3037,6 +3057,21 @@ tables: _eq: X-Hasura-User-Id - active: _eq: true + delete_permissions: + - role: user + permission: + filter: + _or: + - bodyshopid: + _is_null: false + - bodyshop: + associations: + _and: + - user: + authid: + _eq: X-Hasura-User-Id + - active: + _eq: true - table: schema: public name: timetickets