diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 36584c122..10e24f66c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -87,9 +87,24 @@ jobs: - name: (Frontend) Build Project working-directory: ./frontend_server run: npm run build.ci - - name: (Frontend) Check Bundle Size + - name: check /etc/hosts working-directory: ./frontend_server - run: BUNDLEWATCH_GITHUB_TOKEN=${{ secrets.BUNDLEWATCH_GITHUB_TOKEN }} npm run size.check - - name: (Frontend) Run e2e Tests + run: echo "#>>>>#"; cat /etc/hosts; pwd; echo "#>>>>#" + # - name: (Frontend) Check Bundle Size + # working-directory: ./frontend_server + # run: BUNDLEWATCH_GITHUB_TOKEN=${{ secrets.BUNDLEWATCH_GITHUB_TOKEN }} npm run size.check + # - name: (Frontend) Run e2e Tests + # working-directory: ./frontend_server + # run: npm run test:ci + cypress-run: + name: run cypress + runs-on: ubuntu-latest + steps: + - name: Cypress run working-directory: ./frontend_server - run: npm run test:ci + uses: cypress-io/github-action@v2 + with: + browser: chrome + # build: npm run build + start: npm run ci + wait-on: http://localhost:3000 diff --git a/package.json b/package.json index 15c5c606d..e39a8a375 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,7 @@ "dev": "cross-env NODE_ENV=dev node server.js", "prod": "cross-env NODE_ENV=production run-p server", "local": "cross-env NODE_ENV=local node server", - "ci": "cross-env NODE_ENV=ci node server --inspect", + "ci": "cross-env NODE_ENV=ci node server", "server": "npm run clean && node server.js", "build": "next build", "build:clean": "run-s dist clean", @@ -149,7 +149,7 @@ "bundlewatch": "^0.2.7", "commitizen": "3.1.2", "coveralls": "3.0.14", - "cypress": "4.2.0", + "cypress": "^8.1.0", "cz-conventional-changelog": "^3.0.0", "enzyme": "3.11.0", "enzyme-adapter-react-16": "1.15.2", diff --git a/src/components/FormItem/index.js b/src/components/FormItem/index.js index b2ac92844..15fca474c 100755 --- a/src/components/FormItem/index.js +++ b/src/components/FormItem/index.js @@ -8,7 +8,8 @@ import React from 'react' import T from 'prop-types' import { isEmpty } from 'ramda' -import { buildLog, hasValue } from '@/utils' +import { buildLog } from '@/utils/logger' +import { hasValue } from '@/utils/validator' import { SIZE } from '@/constant' import Maybe from '@/components/Maybe' diff --git a/src/components/Modal/Belt.js b/src/components/Modal/Belt.js index 12ea08a81..fd4eb53f4 100755 --- a/src/components/Modal/Belt.js +++ b/src/components/Modal/Belt.js @@ -1,6 +1,6 @@ import React from 'react' -import { useScript } from '@/hooks' +import useScript from '@/hooks/useScript' import { Wrapper, Holder } from './styles/belt' diff --git a/src/components/Modal/index.tsx b/src/components/Modal/index.tsx index cb6f6606d..5ae71f716 100755 --- a/src/components/Modal/index.tsx +++ b/src/components/Modal/index.tsx @@ -10,7 +10,7 @@ import usePortal from 'react-useportal' import { ICON_CMD } from '@/config' import { toggleGlobalBlur } from '@/utils/dom' import { buildLog } from '@/utils/logger' -import { useShortcut } from '@/hooks' +import useShortcut from '@/hooks/useShortcut' import ViewportTracker from '@/components/ViewportTracker' import Belt from './Belt' diff --git a/src/components/NaviCatalog/index.tsx b/src/components/NaviCatalog/index.tsx index d4653e8fe..6706d2bcb 100755 --- a/src/components/NaviCatalog/index.tsx +++ b/src/components/NaviCatalog/index.tsx @@ -8,13 +8,11 @@ import { FC, useState, useCallback, useEffect, memo } from 'react' import { find, findIndex, propEq, last } from 'ramda' import { URL_QUERY } from '@/constant' -import { - buildLog, - nilOrEmpty, - getQueryFromUrl, - markRoute, - findDeepMatch, -} from '@/utils' + +import { findDeepMatch } from '@/utils/helper' +import { buildLog } from '@/utils/logger' +import { nilOrEmpty } from '@/utils/validator' +import { getQueryFromUrl, markRoute } from '@/utils/route' import type { TMenuItem, TMenuMode } from './spec' import { ROOT_MENU, CHILD_MENU } from './constant' diff --git a/src/components/PostItem/ListView.tsx b/src/components/PostItem/ListView.tsx index 4cba42ef3..b1f48d96d 100755 --- a/src/components/PostItem/ListView.tsx +++ b/src/components/PostItem/ListView.tsx @@ -3,7 +3,8 @@ import TimeAgo from 'timeago-react' import type { TPost } from '@/spec' import { ICON_CMD } from '@/config' -import { cutRest, parseDomain } from '@/utils' +import { cutRest } from '@/utils/helper' +import { parseDomain } from '@/utils/route' import InlineTags from '@/components/InlineTags' diff --git a/src/components/Switcher/Tabs/TabIcon.tsx b/src/components/Switcher/Tabs/TabIcon.tsx index 8b8b6ac4f..a0847a148 100644 --- a/src/components/Switcher/Tabs/TabIcon.tsx +++ b/src/components/Switcher/Tabs/TabIcon.tsx @@ -1,7 +1,7 @@ -import React, { FC, useCallback } from 'react' +import { FC, useCallback } from 'react' +import dynamic from 'next/dynamic' import type { TTabItem } from '@/spec' -import LocalIcon from './LocalIcon' import { Wrapper, Icon } from '../styles/tabs/tab_icon' type TProps = { @@ -12,6 +12,10 @@ type TProps = { active: boolean } +export const LocalIcon = dynamic(() => import('./LocalIcon'), { + ssr: false, +}) + const TabIcon: FC = ({ item, clickableRef, active }) => { const { localIcon, icon } = item diff --git a/src/components/Switcher/Tabs/TabItem.tsx b/src/components/Switcher/Tabs/TabItem.tsx index 3f8662d8a..c944aca46 100644 --- a/src/components/Switcher/Tabs/TabItem.tsx +++ b/src/components/Switcher/Tabs/TabItem.tsx @@ -7,7 +7,9 @@ import { FC, useEffect, useCallback, useRef, memo } from 'react' import type { TSIZE_SM, TTabItem } from '@/spec' -import { buildLog, isString, Trans } from '@/utils' +import { Trans } from '@/utils/i18n' +import { isString } from '@/utils/validator' +import { buildLog } from '@/utils/logger' import TabIcon from './TabIcon' import { diff --git a/src/components/ThemeSelector/styles/index.ts b/src/components/ThemeSelector/styles/index.ts index ba86d250b..7e4f8de69 100755 --- a/src/components/ThemeSelector/styles/index.ts +++ b/src/components/ThemeSelector/styles/index.ts @@ -1,7 +1,8 @@ import styled from 'styled-components' import type { TActive, TThemeName } from '@/spec' -import { theme, themeCoverMap, themeCoverIndexMap, css } from '@/utils' +import { theme, themeCoverMap, themeCoverIndexMap } from '@/utils/themes' +import css from '@/utils/css' type TDot = TActive & { name: TThemeName } export const Dot = styled.div` diff --git a/src/components/Tooltip/RealTooltip.tsx b/src/components/Tooltip/RealTooltip.tsx index 6437cd25f..624f842fc 100755 --- a/src/components/Tooltip/RealTooltip.tsx +++ b/src/components/Tooltip/RealTooltip.tsx @@ -8,8 +8,13 @@ import { FC, ReactNode, useState, useRef, memo } from 'react' import { hideAll } from 'tippy.js' import type { TTooltipPlacement } from '@/spec' -import { css, buildLog, isDescendant, isString } from '@/utils' -import { useOutsideClick } from '@/hooks' + +import css from '@/utils/css' +import { buildLog } from '@/utils/logger' +import { isString } from '@/utils/validator' +import { isDescendant } from '@/utils/dom' + +import useOutsideClick from '@/hooks/useOutsideClick' import ConfirmFooter from './ConfirmFooter' import { FOOTER_BEHAVIOR } from './constant' diff --git a/src/components/UserBrief/NumbersPad.js b/src/components/UserBrief/NumbersPad.js index 4d62b1c5a..d3498330a 100644 --- a/src/components/UserBrief/NumbersPad.js +++ b/src/components/UserBrief/NumbersPad.js @@ -1,6 +1,6 @@ import React from 'react' -import { prettyNum } from '@/utils' +import { prettyNum } from '@/utils/helper' import { Wrapper, Section, Title, Number } from './styles/numbers_pad' const NumbersPad = ({ user, listFollowers, listFollowings }) => ( diff --git a/src/components/UserBrief/SocialIcons.js b/src/components/UserBrief/SocialIcons.js index 464e44f80..c533309df 100755 --- a/src/components/UserBrief/SocialIcons.js +++ b/src/components/UserBrief/SocialIcons.js @@ -2,7 +2,8 @@ import React from 'react' import { contains } from 'ramda' import { ICON_CMD } from '@/config' -import { nilOrEmpty, SOCIAL_LISTS } from '@/utils' +import SOCIAL_LISTS from '@/utils/social' +import { nilOrEmpty } from '@/utils/validator' import Tooltip from '@/components/Tooltip' import { Wrapper, Linker, SocialIcon } from './styles/social_icons' diff --git a/src/containers/Route/index.js b/src/containers/Route/index.js index 409a6be5d..bf9f69661 100755 --- a/src/containers/Route/index.js +++ b/src/containers/Route/index.js @@ -7,7 +7,7 @@ import React from 'react' import { useRouter } from 'next/router' -import { pluggedIn } from '@/utils' +import { pluggedIn } from '@/utils/mobx' import { useInit } from './logic' const RouteContainer = ({ route }) => { diff --git a/src/containers/Route/logic.js b/src/containers/Route/logic.js index 91134cefa..9333d79c0 100755 --- a/src/containers/Route/logic.js +++ b/src/containers/Route/logic.js @@ -1,5 +1,8 @@ import { useEffect } from 'react' -import { Global, buildLog, parseURL } from '@/utils' + +import { parseURL } from '@/utils/route' +import { Global } from '@/utils/helper' +import { buildLog } from '@/utils/logger' /* eslint-disable-next-line */ const log = buildLog('L:Route') diff --git a/src/containers/content/ArticleContent/logic.ts b/src/containers/content/ArticleContent/logic.ts index 722d68db2..b2f2c85cb 100755 --- a/src/containers/content/ArticleContent/logic.ts +++ b/src/containers/content/ArticleContent/logic.ts @@ -1,7 +1,10 @@ import { useEffect } from 'react' import { EVENT, ERR } from '@/constant' -import { asyncSuit, buildLog, errRescue, isElementInViewport } from '@/utils' +import { isElementInViewport } from '@/utils/dom' +import { errRescue } from '@/utils/helper' +import { buildLog } from '@/utils/logger' +import asyncSuit from '@/utils/async' import type { TStore } from './store' import S from './schema' diff --git a/src/containers/content/ArticleContent/styles/desktop_view/index.tsx b/src/containers/content/ArticleContent/styles/desktop_view/index.tsx index b49030cc8..aa729c5fa 100644 --- a/src/containers/content/ArticleContent/styles/desktop_view/index.tsx +++ b/src/containers/content/ArticleContent/styles/desktop_view/index.tsx @@ -1,7 +1,9 @@ import styled from 'styled-components' import type { TTestable, TMetric } from '@/spec' -import { theme, css, WIDTH } from '@/utils' +import css from '@/utils/css' +import { theme } from '@/utils/themes' +import { WIDTH } from '@/utils/css/metric' export const Wrapper = styled.article.attrs(({ testid }: TTestable) => ({ 'data-test-id': testid, diff --git a/src/containers/content/CommunityContent/logic.ts b/src/containers/content/CommunityContent/logic.ts index f61ca4188..232c68716 100755 --- a/src/containers/content/CommunityContent/logic.ts +++ b/src/containers/content/CommunityContent/logic.ts @@ -3,7 +3,11 @@ import { values, includes } from 'ramda' import type { TThread } from '@/spec' import { ERR, EVENT, ARTICLE_THREAD } from '@/constant' -import { send, asyncSuit, buildLog, errRescue, thread2Subpath } from '@/utils' + +import { send, errRescue } from '@/utils/helper' +import { thread2Subpath } from '@/utils/route' +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' import type { TStore } from './store' diff --git a/src/containers/content/CoolGuideContent/FilterBar.tsx b/src/containers/content/CoolGuideContent/FilterBar.tsx index 2e0246d41..9ee98f27f 100644 --- a/src/containers/content/CoolGuideContent/FilterBar.tsx +++ b/src/containers/content/CoolGuideContent/FilterBar.tsx @@ -1,7 +1,7 @@ import { FC, Fragment, memo } from 'react' import { ICON_CMD } from '@/config' -import { mockNaviCatalogMenu } from '@/utils' +import { mockNaviCatalogMenu } from '@/utils/mock' import Sticky from '@/components/Sticky' import NaviIntro from '@/components/NaviIntro' diff --git a/src/containers/content/CoolGuideContent/logic.ts b/src/containers/content/CoolGuideContent/logic.ts index 14e87b369..c39b3ee76 100755 --- a/src/containers/content/CoolGuideContent/logic.ts +++ b/src/containers/content/CoolGuideContent/logic.ts @@ -1,7 +1,9 @@ import { useEffect } from 'react' import { ERR } from '@/constant' -import { asyncSuit, buildLog, errRescue } from '@/utils' +import { errRescue } from '@/utils/helper' +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' import type { TStore } from './store' diff --git a/src/containers/content/DiscoveryContent/CommunityCard.js b/src/containers/content/DiscoveryContent/CommunityCard.js index e119d6d6d..67abfcb0d 100755 --- a/src/containers/content/DiscoveryContent/CommunityCard.js +++ b/src/containers/content/DiscoveryContent/CommunityCard.js @@ -2,7 +2,7 @@ import React from 'react' import { contains } from 'ramda' import { NON_FILL_COMMUNITY } from '@/constant' -import { prettyNum, cutRest } from '@/utils' +import { prettyNum, cutRest } from '@/utils/helper' import TrendLine from '@/components/TrendLine' import { CommunityHolder } from '@/components/Loading' diff --git a/src/containers/content/DiscoveryContent/logic.js b/src/containers/content/DiscoveryContent/logic.js index be5d5f0d2..49122b1cb 100755 --- a/src/containers/content/DiscoveryContent/logic.js +++ b/src/containers/content/DiscoveryContent/logic.js @@ -2,13 +2,12 @@ import { useEffect } from 'react' import { isEmpty } from 'ramda' import { EVENT, ERR } from '@/constant' -import { - asyncSuit, - buildLog, - pagedFilter, - errRescue, - updateEditing, -} from '@/utils' + +import { errRescue } from '@/utils/helper' +import { pagedFilter } from '@/utils/graphql' +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' +import { updateEditing } from '@/utils/mobx' import S from './schema' diff --git a/src/containers/content/HaveADrinkContent/index.tsx b/src/containers/content/HaveADrinkContent/index.tsx index 1b1f8e8b1..411e73855 100755 --- a/src/containers/content/HaveADrinkContent/index.tsx +++ b/src/containers/content/HaveADrinkContent/index.tsx @@ -8,8 +8,11 @@ import { FC } from 'react' import dynamic from 'next/dynamic' import type { TMetric } from '@/spec' -import { pluggedIn, buildLog, scrollToTop, lockPage, unlockPage } from '@/utils' -import { useShortcut } from '@/hooks' +import { scrollToTop, lockPage, unlockPage } from '@/utils/dom' +import { buildLog } from '@/utils/logger' +import { pluggedIn } from '@/utils/mobx' + +import useShortcut from '@/hooks/useShortcut' import type { TStore } from './store' import Header from './Header' diff --git a/src/containers/content/HaveADrinkContent/logic.ts b/src/containers/content/HaveADrinkContent/logic.ts index cc4110ece..de9169976 100755 --- a/src/containers/content/HaveADrinkContent/logic.ts +++ b/src/containers/content/HaveADrinkContent/logic.ts @@ -1,7 +1,10 @@ import { useEffect } from 'react' import { ERR } from '@/constant' -import { asyncSuit, buildLog, errRescue } from '@/utils' + +import { errRescue } from '@/utils/helper' +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' import { ANIMATE_TIMER_CLASS } from './constant' import type { TStore } from './store' diff --git a/src/containers/content/MeetupsContent/logic.ts b/src/containers/content/MeetupsContent/logic.ts index 2f4264fd8..b1b0a4ca6 100755 --- a/src/containers/content/MeetupsContent/logic.ts +++ b/src/containers/content/MeetupsContent/logic.ts @@ -1,7 +1,10 @@ import { useEffect } from 'react' import { ERR } from '@/constant' -import { asyncSuit, buildLog, errRescue } from '@/utils' + +import { errRescue } from '@/utils/helper' +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' import type { TStore } from './store' diff --git a/src/containers/content/MembershipContent/logic.ts b/src/containers/content/MembershipContent/logic.ts index 083597863..0f7690f33 100755 --- a/src/containers/content/MembershipContent/logic.ts +++ b/src/containers/content/MembershipContent/logic.ts @@ -2,7 +2,8 @@ import { useEffect } from 'react' import { SENIOR_AMOUNT_THRESHOLD } from '@/config' import { PAYMENT_USAGE } from '@/constant' -import { asyncSuit, buildLog } from '@/utils' +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' import type { TStore } from './store' import type { TPackage } from './spec' diff --git a/src/containers/content/MembershipContent/styles/illustrations/index.ts b/src/containers/content/MembershipContent/styles/illustrations/index.ts index 98b83a87d..6af7ba428 100644 --- a/src/containers/content/MembershipContent/styles/illustrations/index.ts +++ b/src/containers/content/MembershipContent/styles/illustrations/index.ts @@ -1,7 +1,8 @@ import styled, { css as styledCss } from 'styled-components' import type { TActive } from '@/spec' -import { animate, css } from '@/utils' +import css from '@/utils/css' +import animate from '@/utils/animations' import Img from '@/Img' export const Wrapper = styled.div` diff --git a/src/containers/content/MembershipContent/styles/illustrations/ufo.ts b/src/containers/content/MembershipContent/styles/illustrations/ufo.ts index 480ab06fb..364ceed38 100644 --- a/src/containers/content/MembershipContent/styles/illustrations/ufo.ts +++ b/src/containers/content/MembershipContent/styles/illustrations/ufo.ts @@ -1,7 +1,8 @@ import styled, { css as styledCss } from 'styled-components' import type { TTestable, TActive } from '@/spec' -import { animate, css } from '@/utils' +import css from '@/utils/css' +import animate from '@/utils/animations' import { Star1 as Star1Base, diff --git a/src/containers/content/RecipesContent/tempData.js b/src/containers/content/RecipesContent/tempData.js index 6c03d3166..f806d3091 100644 --- a/src/containers/content/RecipesContent/tempData.js +++ b/src/containers/content/RecipesContent/tempData.js @@ -1,5 +1,5 @@ import { ICON_BASE } from '@/config' -import { uid } from '@/utils' +import uid from '@/utils/uid' const menu = [ { diff --git a/src/containers/content/SubscribeContent/Actions/Detail.js b/src/containers/content/SubscribeContent/Actions/Detail.js index 86f5fc671..06dfc9856 100644 --- a/src/containers/content/SubscribeContent/Actions/Detail.js +++ b/src/containers/content/SubscribeContent/Actions/Detail.js @@ -2,7 +2,7 @@ import React from 'react' import { ICON_CMD } from '@/config' -import { useCopyToClipboard } from '@/hooks' +import useCopyToClipboard from 'react-use/lib/useCopyToClipboard' import EmailSubscriber from '@/components/EmailSubscriber' import { Br, SpaceGrow } from '@/components/Common' // TODO: extract to Email Subscriber diff --git a/src/containers/content/SubscribeContent/styles/index.ts b/src/containers/content/SubscribeContent/styles/index.ts index d759748e1..7f6f4de78 100755 --- a/src/containers/content/SubscribeContent/styles/index.ts +++ b/src/containers/content/SubscribeContent/styles/index.ts @@ -1,9 +1,12 @@ import styled from 'styled-components' import type { TTestable } from '@/spec' -import { css, theme, WIDTH } from '@/utils' import Sticky from '@/components/Sticky' +import { theme } from '@/utils/themes' +import css from '@/utils/css' +import { WIDTH } from '@/utils/css/metric' + export const Wrapper = styled.div.attrs(({ testid }: TTestable) => ({ 'data-test-id': testid, }))` diff --git a/src/containers/content/UserContent/logic.ts b/src/containers/content/UserContent/logic.ts index 54785a417..3abcc206d 100755 --- a/src/containers/content/UserContent/logic.ts +++ b/src/containers/content/UserContent/logic.ts @@ -2,7 +2,10 @@ import { useEffect } from 'react' import type { TID, TThread, TUser } from '@/spec' import { TYPE, EVENT, ERR } from '@/constant' -import { asyncSuit, buildLog, send, errRescue } from '@/utils' + +import asyncSuit from '@/utils/async' +import { send, errRescue } from '@/utils/helper' +import { buildLog } from '@/utils/logger' import type { TStore } from './store' diff --git a/src/containers/content/WorksContent/FilterBar.tsx b/src/containers/content/WorksContent/FilterBar.tsx index 360cea775..637ae15df 100644 --- a/src/containers/content/WorksContent/FilterBar.tsx +++ b/src/containers/content/WorksContent/FilterBar.tsx @@ -1,6 +1,6 @@ import { FC, memo } from 'react' -import { mockNaviCatalogMenu } from '@/utils' +import { mockNaviCatalogMenu } from '@/utils/mock' // import FiltersMenu from '@/components/FiltersMenu' import NaviCatalog from '@/components/NaviCatalog' diff --git a/src/containers/content/WorksContent/List/Trending.tsx b/src/containers/content/WorksContent/List/Trending.tsx index 076eb6fec..aa88be0bb 100644 --- a/src/containers/content/WorksContent/List/Trending.tsx +++ b/src/containers/content/WorksContent/List/Trending.tsx @@ -1,6 +1,6 @@ import { FC } from 'react' -import { mockWorks } from '@/utils' +import { mockWorks } from '@/utils/mock' import { ArrowButton } from '@/components/Buttons' import WorksCard from '@/components/Cards/WorksCard' diff --git a/src/containers/content/WorksContent/List/index.tsx b/src/containers/content/WorksContent/List/index.tsx index 1e006cd89..36ffbf751 100644 --- a/src/containers/content/WorksContent/List/index.tsx +++ b/src/containers/content/WorksContent/List/index.tsx @@ -1,6 +1,6 @@ import { FC } from 'react' -import { mockWorks } from '@/utils' +import { mockWorks } from '@/utils/mock' // import { Br } from '@/components/Common' import WorksCard from '@/components/Cards/WorksCard' diff --git a/src/containers/content/WorksContent/styles/banner/index.ts b/src/containers/content/WorksContent/styles/banner/index.ts index 68d5d0cea..f64e1cbcf 100644 --- a/src/containers/content/WorksContent/styles/banner/index.ts +++ b/src/containers/content/WorksContent/styles/banner/index.ts @@ -1,6 +1,8 @@ import styled from 'styled-components' -import { css, theme, WIDTH } from '@/utils' +import css from '@/utils/css' +import { theme } from '@/utils/themes' +import { WIDTH } from '@/utils/css/metric' export const Wrapper = styled.div` position: relative; diff --git a/src/containers/digest/ArticleDigest/DesktopView/index.tsx b/src/containers/digest/ArticleDigest/DesktopView/index.tsx index e6dfa859e..117636ec3 100644 --- a/src/containers/digest/ArticleDigest/DesktopView/index.tsx +++ b/src/containers/digest/ArticleDigest/DesktopView/index.tsx @@ -7,7 +7,7 @@ import { isNil } from 'ramda' import type { TScrollDirection, TMetric } from '@/spec' import { METRIC } from '@/constant' -import { useScroll } from '@/hooks' +import useScroll from '@/hooks/useScroll' import { buildLog } from '@/utils/logger' import { pluggedIn } from '@/utils/mobx' diff --git a/src/containers/digest/ArticleDigest/logic.ts b/src/containers/digest/ArticleDigest/logic.ts index 97a69ead0..0099e3d8e 100755 --- a/src/containers/digest/ArticleDigest/logic.ts +++ b/src/containers/digest/ArticleDigest/logic.ts @@ -3,7 +3,9 @@ import { merge, toUpper } from 'ramda' import type { TScrollDirection } from '@/spec' import { TYPE, EVENT, ERR, THREAD } from '@/constant' -import { asyncSuit, buildLog, send, errRescue } from '@/utils' +import asyncSuit from '@/utils/async' +import { send, errRescue } from '@/utils/helper' +import { buildLog } from '@/utils/logger' import type { TStore } from './store' import S from './schema' diff --git a/src/containers/digest/ArticleDigest/styles/desktop_view/index.ts b/src/containers/digest/ArticleDigest/styles/desktop_view/index.ts index a617076f6..d0a3c7dfc 100644 --- a/src/containers/digest/ArticleDigest/styles/desktop_view/index.ts +++ b/src/containers/digest/ArticleDigest/styles/desktop_view/index.ts @@ -1,7 +1,9 @@ import styled from 'styled-components' import type { TTestable, TMetric } from '@/spec' -import { theme, css, WIDTH } from '@/utils' +import css from '@/utils/css' +import { theme } from '@/utils/themes' +import { WIDTH } from '@/utils/css/metric' import { getDigestHeight } from './metric' diff --git a/src/containers/digest/ArticleDigest/styles/desktop_view/works_layout.ts b/src/containers/digest/ArticleDigest/styles/desktop_view/works_layout.ts index 9d439bf88..ad097c7a3 100644 --- a/src/containers/digest/ArticleDigest/styles/desktop_view/works_layout.ts +++ b/src/containers/digest/ArticleDigest/styles/desktop_view/works_layout.ts @@ -1,7 +1,9 @@ import styled from 'styled-components' import type { TMetric } from '@/spec' -import { theme, css, WIDTH } from '@/utils' +import css from '@/utils/css' +import { theme } from '@/utils/themes' +import { WIDTH } from '@/utils/css/metric' import Img from '@/Img' export const Main = styled.div<{ metric: TMetric }>` diff --git a/src/containers/digest/CommunityDigest/ClassicLayout/index.tsx b/src/containers/digest/CommunityDigest/ClassicLayout/index.tsx index e82c99d4d..329153e63 100644 --- a/src/containers/digest/CommunityDigest/ClassicLayout/index.tsx +++ b/src/containers/digest/CommunityDigest/ClassicLayout/index.tsx @@ -4,7 +4,7 @@ import { contains } from 'ramda' import type { TC11NLayout, TThread, TCommunity, TMetric } from '@/spec' import usePlatform from '@/hooks/usePlatform' import { HCN, EVENT } from '@/constant' -import { send } from '@/utils' +import { send } from '@/utils/helper' import TabBar from '@/components/TabBar' import ViewportTracker from '@/components/ViewportTracker' diff --git a/src/containers/digest/CommunityDigest/logic.ts b/src/containers/digest/CommunityDigest/logic.ts index 4d2bec77f..af5da6dca 100755 --- a/src/containers/digest/CommunityDigest/logic.ts +++ b/src/containers/digest/CommunityDigest/logic.ts @@ -1,7 +1,11 @@ import { useEffect } from 'react' import { TYPE, EVENT, ERR } from '@/constant' -import { asyncSuit, buildLog, send, subPath2Thread, errRescue } from '@/utils' + +import asyncSuit from '@/utils/async' +import { send, errRescue } from '@/utils/helper' +import { subPath2Thread } from '@/utils/route' +import { buildLog } from '@/utils/logger' import type { TStore } from './store' import S from './schema' diff --git a/src/containers/editor/WorksEditor/logic.js b/src/containers/editor/WorksEditor/logic.js index 170f8c461..6599a26df 100755 --- a/src/containers/editor/WorksEditor/logic.js +++ b/src/containers/editor/WorksEditor/logic.js @@ -1,6 +1,7 @@ import { useEffect } from 'react' -import { buildLog, scrollToTop } from '@/utils' +import { scrollToTop } from '@/utils/dom' +import { buildLog } from '@/utils/logger' import { STEP } from './constant' // import S from './service' diff --git a/src/containers/thread/ArticlesThread/logic.ts b/src/containers/thread/ArticlesThread/logic.ts index a5f2f5246..c257db3ea 100755 --- a/src/containers/thread/ArticlesThread/logic.ts +++ b/src/containers/thread/ArticlesThread/logic.ts @@ -3,14 +3,10 @@ import { useEffect } from 'react' import type { TArticle, TArticleFilter } from '@/spec' import { TYPE, EVENT, ERR } from '@/constant' -import { - asyncSuit, - buildLog, - send, - errRescue, - scrollToTabber, - titleCase, -} from '@/utils' +import { scrollToTabber } from '@/utils/dom' +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' +import { send, errRescue, titleCase } from '@/utils/helper' import type { TStore } from './store' import S from './schema' diff --git a/src/containers/thread/ReposThread/logic.js b/src/containers/thread/ReposThread/logic.js index 33cd5f8fb..cc41a94b1 100755 --- a/src/containers/thread/ReposThread/logic.js +++ b/src/containers/thread/ReposThread/logic.js @@ -2,7 +2,11 @@ import { useEffect } from 'react' import { pickBy } from 'ramda' import { TYPE, EVENT, THREAD } from '@/constant' -import { asyncSuit, buildLog, send, scrollToTabber, notEmpty } from '@/utils' +import asyncSuit from '@/utils/async' +import { send } from '@/utils/helper' +import { buildLog } from '@/utils/logger' +import { scrollToTabber } from '@/utils/dom' +import { notEmpty } from '@/utils/validator' import S from './schema' diff --git a/src/containers/thread/RoadmapThread/TodoList/UpVote.js b/src/containers/thread/RoadmapThread/TodoList/UpVote.js index 2147e563a..fa7d6a74c 100755 --- a/src/containers/thread/RoadmapThread/TodoList/UpVote.js +++ b/src/containers/thread/RoadmapThread/TodoList/UpVote.js @@ -1,7 +1,7 @@ import React from 'react' import { ICON } from '@/config' -import { prettyNum } from '@/utils' +import { prettyNum } from '@/utils/helper' import { Wrapper, Icon } from '../styles/todo_list/up_vote' diff --git a/src/containers/thread/UsersThread/geo_data.js b/src/containers/thread/UsersThread/geo_data.js index 713df1e2e..c721c1f40 100755 --- a/src/containers/thread/UsersThread/geo_data.js +++ b/src/containers/thread/UsersThread/geo_data.js @@ -1,7 +1,7 @@ // /* import { fetch } from 'whatwg-fetch' */ import { ASSETS_ENDPOINT } from '@/config' -import { BStore } from '@/utils' +import BStore from '@/utils/bstore' const endpoint = `${ASSETS_ENDPOINT}/asia.geo.json` const bkey = 'asia.geo.data' diff --git a/src/containers/thread/UsersThread/logic.js b/src/containers/thread/UsersThread/logic.js index 8904ebcdf..5383a023c 100755 --- a/src/containers/thread/UsersThread/logic.js +++ b/src/containers/thread/UsersThread/logic.js @@ -1,7 +1,9 @@ import { useEffect } from 'react' import { ERR } from '@/constant' -import { asyncSuit, buildLog, errRescue } from '@/utils' +import asyncSuit from '@/utils/async' +import { errRescue } from '@/utils/helper' +import { buildLog } from '@/utils/logger' import S from './schema' /* eslint-disable-next-line */ diff --git a/src/containers/tool/AbuseReport/logic.ts b/src/containers/tool/AbuseReport/logic.ts index 76dcffc52..17c26ac91 100755 --- a/src/containers/tool/AbuseReport/logic.ts +++ b/src/containers/tool/AbuseReport/logic.ts @@ -1,7 +1,8 @@ import { useEffect } from 'react' import { TYPE, EVENT } from '@/constant' -import { buildLog, asyncSuit } from '@/utils' +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' import articleItems from './defaults/article' import userItems from './defaults/user' diff --git a/src/containers/tool/Cashier/logic.js b/src/containers/tool/Cashier/logic.js index 02477c96e..074f25772 100755 --- a/src/containers/tool/Cashier/logic.js +++ b/src/containers/tool/Cashier/logic.js @@ -2,15 +2,12 @@ import { useEffect } from 'react' import { isEmpty } from 'ramda' import { EVENT, ERR } from '@/constant' -import { - asyncSuit, - buildLog, - Global, - lockPage, - errorForHuman, - send, - errRescue, -} from '@/utils' + +import asyncSuit from '@/utils/async' +import { errorForHuman } from '@/utils/errors' +import { Global, send, errRescue } from '@/utils/helper' +import { lockPage } from '@/utils/dom' +import { buildLog } from '@/utils/logger' import S from './schema' diff --git a/src/containers/tool/CollectionFolder/logic.ts b/src/containers/tool/CollectionFolder/logic.ts index 0d9e00153..f0447a6da 100755 --- a/src/containers/tool/CollectionFolder/logic.ts +++ b/src/containers/tool/CollectionFolder/logic.ts @@ -4,7 +4,11 @@ import { curry, toUpper } from 'ramda' import type { TID } from '@/spec' import { PAGE_SIZE } from '@/config' import { EVENT, ERR } from '@/constant' -import { asyncSuit, buildLog, send, errRescue, updateEditing } from '@/utils' + +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' +import { send, errRescue } from '@/utils/helper' +import { updateEditing } from '@/utils/mobx' import type { TStore } from './store' import S from './schema' diff --git a/src/containers/tool/CommunitySetter/logic.js b/src/containers/tool/CommunitySetter/logic.js index 70bb77e88..b348c09b0 100755 --- a/src/containers/tool/CommunitySetter/logic.js +++ b/src/containers/tool/CommunitySetter/logic.js @@ -2,7 +2,9 @@ import { useEffect } from 'react' import { isEmpty, merge } from 'ramda' import { EVENT, ERR, THREAD } from '@/constant' -import { asyncSuit, buildLog, errRescue } from '@/utils' +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' +import { errRescue } from '@/utils/helper' import S from './schema' /* eslint-disable-next-line */ diff --git a/src/containers/tool/DocUploader/index.js b/src/containers/tool/DocUploader/index.js index 0be897474..3736e9ea9 100755 --- a/src/containers/tool/DocUploader/index.js +++ b/src/containers/tool/DocUploader/index.js @@ -9,7 +9,11 @@ import T from 'prop-types' import { startsWith } from 'ramda' import { ASSETS_ENDPOINT } from '@/config' -import { buildLog, storePlug, uid, Global } from '@/utils' + +import uid from '@/utils/uid' +import { buildLog } from '@/utils/logger' +import { storePlug } from '@/utils/mobx' +import { Global } from '@/utils/helper' import { Wrapper, InputFile } from './styles' diff --git a/src/containers/tool/DocUploader/logic.js b/src/containers/tool/DocUploader/logic.js index 56407f74a..34ac7446e 100755 --- a/src/containers/tool/DocUploader/logic.js +++ b/src/containers/tool/DocUploader/logic.js @@ -1,5 +1,8 @@ -import { EVENT, ERR } from '@/constant' -import { asyncSuit, buildLog, send, errRescue } from '@/utils' +import { ERR } from '@/constant' + +import { buildLog } from '@/utils/logger' +import { errRescue } from '@/utils/helper' +import asyncSuit from '@/utils/async' /* eslint-disable-next-line */ const log = buildLog('L:DocUploader') diff --git a/src/containers/tool/Doraemon/InputEditor.js b/src/containers/tool/Doraemon/InputEditor.js index 856c7894f..46601f7db 100755 --- a/src/containers/tool/Doraemon/InputEditor.js +++ b/src/containers/tool/Doraemon/InputEditor.js @@ -6,7 +6,7 @@ import React from 'react' -import { useShortcut } from '@/hooks' +import useShortcut from '@/hooks/useShortcut' import InputPrefix from './InputPrefix' import { EditorBar, InputBar, PrefixWrapper } from './styles/input_editor' diff --git a/src/containers/tool/Doraemon/index.js b/src/containers/tool/Doraemon/index.js index 98b44e0d3..5b8c0220f 100755 --- a/src/containers/tool/Doraemon/index.js +++ b/src/containers/tool/Doraemon/index.js @@ -7,7 +7,8 @@ import { Fragment, useEffect } from 'react' import usePortal from 'react-useportal' -import { pluggedIn, buildLog, toggleGlobalBlur } from '@/utils' +import { toggleGlobalBlur } from '@/utils/dom' +import { pluggedIn } from '@/utils/mobx' import InputEditor from './InputEditor' import ResultsList from './ResultsList' @@ -19,9 +20,6 @@ import UtilsBar from './UtilsBar' import { PageOverlay, PanelContainer } from './styles' import { useInit, hidePanel } from './logic' -/* eslint-disable-next-line */ -const log = buildLog('C:Doraemon') - const DoraemonContainer = ({ doraemon: store }) => { useInit(store) const { Portal } = usePortal() diff --git a/src/containers/tool/Doraemon/logic/index.js b/src/containers/tool/Doraemon/logic/index.js index 56ab90b62..e48ba7a59 100755 --- a/src/containers/tool/Doraemon/logic/index.js +++ b/src/containers/tool/Doraemon/logic/index.js @@ -4,15 +4,10 @@ import { map, last, slice, isEmpty, startsWith } from 'ramda' import { ISSUE_ADDR } from '@/config' import { EVENT, ERR, THREAD } from '@/constant' -import { - asyncSuit, - buildLog, - Global, - send, - prettyNum, - cutRest, - errRescue, -} from '@/utils' + +import { buildLog } from '@/utils/logger' +import { Global, send, prettyNum, cutRest, errRescue } from '@/utils/helper' +import asyncSuit from '@/utils/async' // import S from '../schema' import { jumpToCommunity, jumpToContent, goToHelpPage } from './jumper' diff --git a/src/containers/tool/Doraemon/logic/jumper.js b/src/containers/tool/Doraemon/logic/jumper.js index b18ff59c3..d3103575f 100755 --- a/src/containers/tool/Doraemon/logic/jumper.js +++ b/src/containers/tool/Doraemon/logic/jumper.js @@ -1,7 +1,9 @@ import { contains, startsWith } from 'ramda' import { EVENT, TYPE, ROUTE, THREAD } from '@/constant' -import { Global, send, thread2Subpath } from '@/utils' + +import { thread2Subpath } from '@/utils/route' +import { Global, send } from '@/utils/helper' export const jumpToCommunity = (store, communityRaw) => { const { mainPath, subPath } = store.curRoute diff --git a/src/containers/tool/Doraemon/logic/oauth/github_handler.js b/src/containers/tool/Doraemon/logic/oauth/github_handler.js index c721cd316..6c2326ed0 100755 --- a/src/containers/tool/Doraemon/logic/oauth/github_handler.js +++ b/src/containers/tool/Doraemon/logic/oauth/github_handler.js @@ -1,4 +1,5 @@ -import { Global, getQueryFromUrl } from '@/utils' +import { Global } from '@/utils/helper' +import { getQueryFromUrl } from '@/utils/route' import oauthPopup from './oauth_window' import S from '../../schema' diff --git a/src/containers/tool/Doraemon/styles/input_prefix.ts b/src/containers/tool/Doraemon/styles/input_prefix.ts index 443c89326..db429a688 100755 --- a/src/containers/tool/Doraemon/styles/input_prefix.ts +++ b/src/containers/tool/Doraemon/styles/input_prefix.ts @@ -1,7 +1,9 @@ import styled from 'styled-components' import Img from '@/Img' -import { css, theme, animate } from '@/utils' +import { theme } from '@/utils/themes' +import css from '@/utils/css' +import animate from '@/utils/animations' export const PrefixIcon = styled(Img)` ${css.size(30)}; diff --git a/src/containers/tool/Drawer/logic.ts b/src/containers/tool/Drawer/logic.ts index f9a05533a..ca54340da 100755 --- a/src/containers/tool/Drawer/logic.ts +++ b/src/containers/tool/Drawer/logic.ts @@ -4,17 +4,13 @@ import { contains, values } from 'ramda' import type { TDirection } from '@/spec' import { TYPE, EVENT } from '@/constant' -import { - asyncSuit, - buildLog, - send, - Global, - debounce, - toggleGlobalBlur, - clearGlobalBlur, -} from '@/utils' +import { toggleGlobalBlur, clearGlobalBlur } from '@/utils/dom' +import { Global, send, debounce } from '@/utils/helper' +import { buildLog } from '@/utils/logger' +import asyncSuit from '@/utils/async' import type { TStore } from './store' + /* eslint-disable-next-line */ const log = buildLog('L:Preview') diff --git a/src/containers/tool/ErrorBox/GraphqlDetail.js b/src/containers/tool/ErrorBox/GraphqlDetail.js index 8aa188b66..47b712f59 100755 --- a/src/containers/tool/ErrorBox/GraphqlDetail.js +++ b/src/containers/tool/ErrorBox/GraphqlDetail.js @@ -2,7 +2,8 @@ import React from 'react' // import { ICON_CMD } from '@/config' // import { Wrapper } from './styles' -import { uid, nilOrEmpty } from '@/utils' +import uid from '@/utils/uid' +import { nilOrEmpty } from '@/utils/validator' import { Wrapper, TitleWrapper, Dot, Title, Desc } from './styles/details' const ChangesetMessages = ({ items }) => ( diff --git a/src/containers/tool/ErrorBox/index.js b/src/containers/tool/ErrorBox/index.js index 03c9daa51..83daa68fb 100755 --- a/src/containers/tool/ErrorBox/index.js +++ b/src/containers/tool/ErrorBox/index.js @@ -10,7 +10,7 @@ import { buildLog } from '@/utils/logger' import { pluggedIn } from '@/utils/mobx' import Modal from '@/components/Modal' -import { useShortcut } from '@/hooks' +import useShortcut from '@/hooks/useShortcut' import Header from './Header' import Details from './Details' diff --git a/src/containers/tool/Share/logic.ts b/src/containers/tool/Share/logic.ts index 4782ad941..27cbecde7 100755 --- a/src/containers/tool/Share/logic.ts +++ b/src/containers/tool/Share/logic.ts @@ -1,7 +1,8 @@ import { useEffect } from 'react' // import { } from 'ramda' -import { buildLog, asyncSuit } from '@/utils' +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' import { EVENT } from '@/constant' import { SHARE_TYPE } from './constant' diff --git a/src/containers/unit/ArticleBodyHeader/logic.js b/src/containers/unit/ArticleBodyHeader/logic.js index c9c4a3b61..08da5a11c 100755 --- a/src/containers/unit/ArticleBodyHeader/logic.js +++ b/src/containers/unit/ArticleBodyHeader/logic.js @@ -1,5 +1,5 @@ import { useEffect } from 'react' -import { toUpper, merge } from 'ramda' +import { toUpper } from 'ramda' import { TYPE, EVENT, ERR, THREAD } from '@/constant' import { asyncSuit, buildLog, send, closeDrawer, errRescue } from '@/utils' diff --git a/src/containers/unit/ArticleViewerHeader/logic.js b/src/containers/unit/ArticleViewerHeader/logic.js index 2ef37fb0d..11c35d427 100755 --- a/src/containers/unit/ArticleViewerHeader/logic.js +++ b/src/containers/unit/ArticleViewerHeader/logic.js @@ -2,7 +2,10 @@ import { useEffect } from 'react' import { toUpper, merge } from 'ramda' import { TYPE, EVENT, ERR, THREAD } from '@/constant' -import { asyncSuit, buildLog, send, errRescue } from '@/utils' + +import asyncSuit from '@/utils/async' +import { send, errRescue } from '@/utils/helper' +import { buildLog } from '@/utils/logger' import S from './schema' diff --git a/src/containers/unit/Comments/logic.ts b/src/containers/unit/Comments/logic.ts index fac1c779e..efd01e1a8 100755 --- a/src/containers/unit/Comments/logic.ts +++ b/src/containers/unit/Comments/logic.ts @@ -5,16 +5,11 @@ import type { TUser, TID } from '@/spec' import { PAGE_SIZE } from '@/config' import { TYPE, EVENT, ERR } from '@/constant' -import { - asyncSuit, - buildLog, - scrollIntoEle, - countWords, - send, - extractMentions, - errRescue, - BStore, -} from '@/utils' +import asyncSuit from '@/utils/async' +import BStore from '@/utils/bstore' +import { send, countWords, extractMentions, errRescue } from '@/utils/helper' +import { buildLog } from '@/utils/logger' +import { scrollIntoEle } from '@/utils/dom' import type { TStore } from './store' import S from './schema' diff --git a/src/containers/unit/Footer/logic.ts b/src/containers/unit/Footer/logic.ts index 18afd94fc..ec2008591 100755 --- a/src/containers/unit/Footer/logic.ts +++ b/src/containers/unit/Footer/logic.ts @@ -2,7 +2,10 @@ import { useEffect } from 'react' import type { TMetric } from '@/spec' import { EVENT, PAYMENT_USAGE } from '@/constant' -import { asyncSuit, buildLog, send } from '@/utils' + +import asyncSuit from '@/utils/async' +import { send } from '@/utils/helper' +import { buildLog } from '@/utils/logger' // import S from './schema' import type { TStore } from './store' diff --git a/src/containers/unit/ModeLine/BottomBar/index.js b/src/containers/unit/ModeLine/BottomBar/index.js index 3aaa60b3f..30b84dc9f 100644 --- a/src/containers/unit/ModeLine/BottomBar/index.js +++ b/src/containers/unit/ModeLine/BottomBar/index.js @@ -3,7 +3,7 @@ import T from 'prop-types' import { values } from 'ramda' import { METRIC, TYPE } from '@/constant' -import { multiClick } from '@/utils' +import { multiClick } from '@/utils/helper' import { MenuBlock, diff --git a/src/containers/unit/ModeLine/logic.js b/src/containers/unit/ModeLine/logic.js index fbf960258..62a8958f3 100755 --- a/src/containers/unit/ModeLine/logic.js +++ b/src/containers/unit/ModeLine/logic.js @@ -2,7 +2,11 @@ import { useEffect } from 'react' // import { } from 'ramda' import { TYPE, EVENT } from '@/constant' -import { send, buildLog, thread2Subpath, asyncSuit } from '@/utils' + +import asyncSuit from '@/utils/async' +import { thread2Subpath } from '@/utils/route' +import { send } from '@/utils/helper' +import { buildLog } from '@/utils/logger' // import S from './service' const { SR71, $solver, asyncRes } = asyncSuit diff --git a/src/containers/unit/Sidebar/logic.ts b/src/containers/unit/Sidebar/logic.ts index 6b313ba79..e7cc3435c 100755 --- a/src/containers/unit/Sidebar/logic.ts +++ b/src/containers/unit/Sidebar/logic.ts @@ -4,14 +4,12 @@ import { addIndex, map, reject, propEq, contains } from 'ramda' import type { TCommunity } from '@/spec' import { HCN, EVENT, ERR, THREAD, ROUTE } from '@/constant' -import { - asyncSuit, - buildLog, - send, - thread2Subpath, - Global, - errRescue, -} from '@/utils' + +import { Global, send, errRescue } from '@/utils/helper' +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' +import { thread2Subpath } from '@/utils/route' + import type { TStore } from './store' import S from './schema' diff --git a/src/containers/unit/TagsBar/DesktopView/Folder.tsx b/src/containers/unit/TagsBar/DesktopView/Folder.tsx index ccc980ca1..77b52e57a 100644 --- a/src/containers/unit/TagsBar/DesktopView/Folder.tsx +++ b/src/containers/unit/TagsBar/DesktopView/Folder.tsx @@ -3,7 +3,7 @@ import { FC, useState, useRef, useEffect } from 'react' import { findIndex } from 'ramda' import { ICON } from '@/config' -import { sortByColor } from '@/utils' +import { sortByColor } from '@/utils/helper' import type { TTag } from '@/spec' diff --git a/src/containers/unit/TagsBar/DesktopView/TagCount.tsx b/src/containers/unit/TagsBar/DesktopView/TagCount.tsx index 2f5dd5d7f..8d085410d 100755 --- a/src/containers/unit/TagsBar/DesktopView/TagCount.tsx +++ b/src/containers/unit/TagsBar/DesktopView/TagCount.tsx @@ -1,6 +1,6 @@ import React from 'react' -import { getRandomInt } from '@/utils' +import { getRandomInt } from '@/utils/helper' import { Wrapper, Count, ChartBar } from '../styles/desktop_view/tag_count' const TagCount = ({ num }) => { diff --git a/src/containers/unit/TagsBar/DesktopView/index.tsx b/src/containers/unit/TagsBar/DesktopView/index.tsx index 757f37e41..09fa6ad1d 100644 --- a/src/containers/unit/TagsBar/DesktopView/index.tsx +++ b/src/containers/unit/TagsBar/DesktopView/index.tsx @@ -7,7 +7,8 @@ import { FC } from 'react' import { keys } from 'ramda' -import { buildLog, pluggedIn } from '@/utils' +import { pluggedIn } from '@/utils/mobx' +import { buildLog } from '@/utils/logger' import type { TProps as TTagProps } from '../index' diff --git a/src/containers/unit/TagsBar/logic.ts b/src/containers/unit/TagsBar/logic.ts index 239f212a0..eb57c8fdf 100755 --- a/src/containers/unit/TagsBar/logic.ts +++ b/src/containers/unit/TagsBar/logic.ts @@ -1,11 +1,13 @@ import { useEffect } from 'react' -import { isEmpty, pick, contains, toUpper } from 'ramda' +import { contains, toUpper } from 'ramda' -import type { TTag, TThread } from '@/spec' -import { emptyTag } from '@/model' +import type { TTag } from '@/spec' import { EVENT, ERR, THREAD } from '@/constant' -import { asyncSuit, buildLog, errRescue } from '@/utils' + +import asyncSuit from '@/utils/async' +import { errRescue } from '@/utils/helper' +import { buildLog } from '@/utils/logger' import type { TStore } from './store' import S from './schema' diff --git a/src/containers/user/UserFavorited/logic.js b/src/containers/user/UserFavorited/logic.js index d6f6a38ae..df547911c 100755 --- a/src/containers/user/UserFavorited/logic.js +++ b/src/containers/user/UserFavorited/logic.js @@ -2,7 +2,11 @@ import { useEffect } from 'react' import { toUpper } from 'ramda' import { TYPE, EVENT, THREAD } from '@/constant' -import { asyncSuit, buildLog, send, pagedFilter } from '@/utils' + +import { pagedFilter } from '@/utils/graphql' +import { send } from '@/utils/helper' +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' import S from './schema' diff --git a/src/containers/viewer/ArticleViewer/logic.ts b/src/containers/viewer/ArticleViewer/logic.ts index 3d5a42435..976ec653c 100755 --- a/src/containers/viewer/ArticleViewer/logic.ts +++ b/src/containers/viewer/ArticleViewer/logic.ts @@ -1,7 +1,9 @@ import { useEffect } from 'react' import { merge } from 'ramda' -import { asyncSuit, buildLog, errRescue } from '@/utils' +import { buildLog } from '@/utils/logger' +import { errRescue } from '@/utils/helper' +import asyncSuit from '@/utils/async' import { EVENT, ERR } from '@/constant' diff --git a/src/containers/viewer/MailsViewer/logic.js b/src/containers/viewer/MailsViewer/logic.js index 4d50dcae9..6e8a41ded 100755 --- a/src/containers/viewer/MailsViewer/logic.js +++ b/src/containers/viewer/MailsViewer/logic.js @@ -2,7 +2,10 @@ import { useEffect } from 'react' import { PAGE_SIZE } from '@/config' import { ERR } from '@/constant' -import { asyncSuit, buildLog, errRescue } from '@/utils' + +import asyncSuit from '@/utils/async' +import { buildLog } from '@/utils/logger' +import { errRescue } from '@/utils/helper' import S from './schema' diff --git a/src/containers/viewer/RepoViewer/index.js b/src/containers/viewer/RepoViewer/index.js index 4ba4b1ea4..65b008755 100755 --- a/src/containers/viewer/RepoViewer/index.js +++ b/src/containers/viewer/RepoViewer/index.js @@ -6,12 +6,10 @@ import React from 'react' -import { THREAD } from '@/constant' +// import { THREAD } from '@/constant' import { buildLog } from '@/utils/logger' import { pluggedIn } from '@/utils/mobx' -import ArticleViewerHeader from '@/containers/unit/ArticleViewerHeader' -import ArticleBodyHeader from '@/containers/unit/ArticleBodyHeader' import Comments from '@/containers/unit/Comments' import GithubRepoPage from '@/components/GithubRepoPage' @@ -30,23 +28,8 @@ const RepoViewerContainer = ({ repoViewer: store, attachment }) => { - } - bodyHeader={ - - } + viewerHeader={
ii
} + bodyHeader={
ii
} updating={loading} /> diff --git a/src/hoc/withGuardian.js b/src/hoc/withGuardian.js index 566416c4c..83a87f82e 100755 --- a/src/hoc/withGuardian.js +++ b/src/hoc/withGuardian.js @@ -9,7 +9,9 @@ import React from 'react' import T from 'prop-types' import { startsWith, isEmpty, path, split } from 'ramda' -import { buildLog, BStore, nilOrEmpty } from '@/utils' +import BStore from '@/utils/bstore' +import { nilOrEmpty } from '@/utils/validator' +import { buildLog } from '@/utils/logger' /* eslint-disable-next-line */ const log = buildLog('c:Guardian:index') diff --git a/src/pages/community.tsx b/src/pages/community.tsx index f65c7238e..450c21762 100755 --- a/src/pages/community.tsx +++ b/src/pages/community.tsx @@ -155,7 +155,6 @@ const CommunityPage = (props) => { description: `${community.desc}`, } - // return hello return ( =1.2.2, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5: version "1.2.5" resolved "https://registry.npm.taobao.org/minimist/download/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" @@ -7942,12 +7928,6 @@ mixin-deep@^1.2.0: for-in "^1.0.2" is-extendable "^1.0.1" -mkdirp@0.5.1: - version "0.5.1" - resolved "https://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" - dependencies: - minimist "0.0.8" - mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.5: version "0.5.5" resolved "https://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" @@ -7980,10 +7960,6 @@ module-alias@^2.0.1: version "2.2.2" resolved "https://registry.npm.taobao.org/module-alias/download/module-alias-2.2.2.tgz#151cdcecc24e25739ff0aa6e51e1c5716974c0e0" -moment@2.24.0: - version "2.24.0" - resolved "https://registry.nlark.com/moment/download/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b" - moo@^0.5.0: version "0.5.1" resolved "https://registry.nlark.com/moo/download/moo-0.5.1.tgz#7aae7f384b9b09f620b6abf6f74ebbcd1b65dbc4" @@ -8504,10 +8480,6 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: dependencies: wrappy "1" -onetime@^1.0.0: - version "1.1.0" - resolved "https://registry.npm.taobao.org/onetime/download/onetime-1.1.0.tgz?cache=0&sync_timestamp=1617889724435&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fonetime%2Fdownload%2Fonetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" - onetime@^2.0.0: version "2.0.1" resolved "https://registry.nlark.com/onetime/download/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" @@ -8569,7 +8541,7 @@ os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.nlark.com/os-tmpdir/download/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" -ospath@1.2.2: +ospath@^1.2.2: version "1.2.2" resolved "https://registry.npm.taobao.org/ospath/download/ospath-1.2.2.tgz#1276639774a3f8ef2572f7fe4280e0ea4550c07b" @@ -8633,16 +8605,18 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" -p-map@^2.0.0: - version "2.1.0" - resolved "https://registry.nlark.com/p-map/download/p-map-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fp-map%2Fdownload%2Fp-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" - p-map@^3.0.0: version "3.0.0" resolved "https://registry.nlark.com/p-map/download/p-map-3.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fp-map%2Fdownload%2Fp-map-3.0.0.tgz#d704d9af8a2ba684e2600d9a215983d4141a979d" dependencies: aggregate-error "^3.0.0" +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.nlark.com/p-map/download/p-map-4.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fp-map%2Fdownload%2Fp-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + dependencies: + aggregate-error "^3.0.0" + p-try@^1.0.0: version "1.0.0" resolved "https://registry.nlark.com/p-try/download/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -8799,10 +8773,6 @@ path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" -path-is-inside@^1.0.1: - version "1.0.2" - resolved "https://registry.nlark.com/path-is-inside/download/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" - path-key@^2.0.0, path-key@^2.0.1: version "2.0.1" resolved "https://registry.nlark.com/path-key/download/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" @@ -9025,11 +8995,7 @@ prettier@^1.18.2: version "1.19.1" resolved "https://registry.nlark.com/prettier/download/prettier-1.19.1.tgz?cache=0&sync_timestamp=1624696193562&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fprettier%2Fdownload%2Fprettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" -pretty-bytes@5.3.0: - version "5.3.0" - resolved "https://registry.npm.taobao.org/pretty-bytes/download/pretty-bytes-5.3.0.tgz#f2849e27db79fb4d6cfe24764fc4134f165989f2" - -pretty-bytes@^5.1.0: +pretty-bytes@^5.1.0, pretty-bytes@^5.6.0: version "5.6.0" resolved "https://registry.nlark.com/pretty-bytes/download/pretty-bytes-5.6.0.tgz#356256f643804773c82f64723fe78c92c62beaeb" @@ -9256,6 +9222,10 @@ ramda@0.26.1: version "0.26.1" resolved "https://registry.npm.taobao.org/ramda/download/ramda-0.26.1.tgz#8d41351eb8111c55353617fc3bbffad8e4d35d06" +ramda@~0.27.1: + version "0.27.1" + resolved "https://registry.nlark.com/ramda/download/ramda-0.27.1.tgz#66fc2df3ef873874ffc2da6aa8984658abacf5c9" + randexp@0.4.6: version "0.4.6" resolved "https://registry.npm.taobao.org/randexp/download/randexp-0.4.6.tgz#e986ad5e5e31dae13ddd6f7b3019aa7c87f60ca3" @@ -9752,7 +9722,7 @@ repeating@^2.0.0: dependencies: is-finite "^1.0.0" -request-progress@3.0.0: +request-progress@^3.0.0: version "3.0.0" resolved "https://registry.npm.taobao.org/request-progress/download/request-progress-3.0.0.tgz#4ca754081c7fec63f505e4faa825aa06cd669dbe" dependencies: @@ -9783,31 +9753,6 @@ request@^2.88.2: tunnel-agent "^0.6.0" uuid "^3.3.2" -"request@github:cypress-io/request#b5af0d1fa47eec97ba980cde90a13e69a2afcd16": - version "2.88.1" - resolved "https://codeload.github.com/cypress-io/request/tar.gz/b5af0d1fa47eec97ba980cde90a13e69a2afcd16" - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.5.0" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.nlark.com/require-directory/download/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -9888,13 +9833,6 @@ response-time@^2.3.2: depd "~1.1.0" on-headers "~1.0.1" -restore-cursor@^1.0.1: - version "1.0.1" - resolved "https://registry.nlark.com/restore-cursor/download/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" - dependencies: - exit-hook "^1.0.0" - onetime "^1.0.0" - restore-cursor@^2.0.0: version "2.0.0" resolved "https://registry.npm.taobao.org/restore-cursor/download/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" @@ -9983,7 +9921,7 @@ rxjs@6.2.2: dependencies: tslib "^1.9.0" -rxjs@^6.1.0, rxjs@^6.3.3, rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.3: +rxjs@^6.1.0, rxjs@^6.4.0, rxjs@^6.6.0, rxjs@^6.6.3, rxjs@^6.6.7: version "6.6.7" resolved "https://registry.nlark.com/rxjs/download/rxjs-6.6.7.tgz?cache=0&sync_timestamp=1625506603452&other_urls=https%3A%2F%2Fregistry.nlark.com%2Frxjs%2Fdownload%2Frxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" dependencies: @@ -10240,9 +10178,13 @@ slash@^3.0.0: version "3.0.0" resolved "https://registry.nlark.com/slash/download/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" -slice-ansi@0.0.4: - version "0.0.4" - resolved "https://registry.nlark.com/slice-ansi/download/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" +slice-ansi@^3.0.0: + version "3.0.0" + resolved "https://registry.nlark.com/slice-ansi/download/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787" + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" slice-ansi@^4.0.0: version "4.0.0" @@ -10577,7 +10519,7 @@ string-width@^1.0.1: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -"string-width@^1.0.2 || 2", string-width@^2.1.0, string-width@^2.1.1: +"string-width@^1.0.2 || 2", string-width@^2.1.0: version "2.1.1" resolved "https://registry.nlark.com/string-width/download/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" dependencies: @@ -10784,12 +10726,6 @@ stylis@^4.0.6: version "4.0.10" resolved "https://registry.npm.taobao.org/stylis/download/stylis-4.0.10.tgz?cache=0&sync_timestamp=1617798427111&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstylis%2Fdownload%2Fstylis-4.0.10.tgz#446512d1097197ab3f02fb3c258358c3f7a14240" -supports-color@7.1.0: - version "7.1.0" - resolved "https://registry.nlark.com/supports-color/download/supports-color-7.1.0.tgz?cache=0&sync_timestamp=1626703342506&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" - dependencies: - has-flag "^4.0.0" - supports-color@^2.0.0: version "2.0.0" resolved "https://registry.nlark.com/supports-color/download/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" @@ -10806,7 +10742,7 @@ supports-color@^7.0.0, supports-color@^7.1.0: dependencies: has-flag "^4.0.0" -supports-color@^8.0.0: +supports-color@^8.0.0, supports-color@^8.1.1: version "8.1.1" resolved "https://registry.nlark.com/supports-color/download/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" dependencies: @@ -10933,7 +10869,7 @@ through2@^4.0.0: dependencies: readable-stream "3" -through@2, "through@>=2.2.7 <3", through@^2.3.6, through@~2.3, through@~2.3.1: +through@2, "through@>=2.2.7 <3", through@^2.3.6, through@^2.3.8, through@~2.3, through@~2.3.1: version "2.3.8" resolved "https://registry.nlark.com/through/download/through-2.3.8.tgz?cache=0&sync_timestamp=1618847037651&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fthrough%2Fdownload%2Fthrough-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" @@ -10985,18 +10921,18 @@ tlds@^1.189.0: version "1.221.1" resolved "https://registry.nlark.com/tlds/download/tlds-1.221.1.tgz#6cf6bff5eaf30c5618c5801c3f425a6dc61ca0ad" -tmp@0.1.0: - version "0.1.0" - resolved "https://registry.npm.taobao.org/tmp/download/tmp-0.1.0.tgz?cache=0&sync_timestamp=1615984440866&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftmp%2Fdownload%2Ftmp-0.1.0.tgz#ee434a4e22543082e294ba6201dcc6eafefa2877" - dependencies: - rimraf "^2.6.3" - tmp@^0.0.33: version "0.0.33" resolved "https://registry.nlark.com/tmp/download/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" dependencies: os-tmpdir "~1.0.2" +tmp@~0.2.1: + version "0.2.1" + resolved "https://registry.npm.taobao.org/tmp/download/tmp-0.2.1.tgz?cache=0&sync_timestamp=1615984440866&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftmp%2Fdownload%2Ftmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14" + dependencies: + rimraf "^3.0.0" + tmpl@1.0.x: version "1.0.4" resolved "https://registry.npm.taobao.org/tmpl/download/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" @@ -11287,6 +11223,10 @@ universalify@^0.1.0, universalify@^0.1.2: version "0.1.2" resolved "https://registry.npm.taobao.org/universalify/download/universalify-0.1.2.tgz?cache=0&sync_timestamp=1603180004159&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Funiversalify%2Fdownload%2Funiversalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" +universalify@^2.0.0: + version "2.0.0" + resolved "https://registry.nlark.com/universalify/download/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.npm.taobao.org/unpipe/download/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" @@ -11298,7 +11238,7 @@ unset-value@^1.0.0: has-value "^0.3.1" isobject "^3.0.0" -untildify@4.0.0: +untildify@^4.0.0: version "4.0.0" resolved "https://registry.nlark.com/untildify/download/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" @@ -11326,7 +11266,7 @@ urix@^0.1.0: version "0.1.0" resolved "https://registry.nlark.com/urix/download/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" -url@0.11.0, url@^0.11.0: +url@^0.11.0: version "0.11.0" resolved "https://registry.nlark.com/url/download/url-0.11.0.tgz?cache=0&sync_timestamp=1618846952693&other_urls=https%3A%2F%2Fregistry.nlark.com%2Furl%2Fdownload%2Furl-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" dependencies: @@ -11822,13 +11762,6 @@ worker-farm@^1.7.0: dependencies: errno "~0.1.7" -wrap-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-3.0.1.tgz#288a04d87eda5c286e060dfe8f135ce8d007f8ba" - dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - wrap-ansi@^6.2.0: version "6.2.0" resolved "https://registry.nlark.com/wrap-ansi/download/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" @@ -11837,6 +11770,14 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.nlark.com/wrappy/download/wrappy-1.0.2.tgz?cache=0&sync_timestamp=1619133505879&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fwrappy%2Fdownload%2Fwrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -11925,19 +11866,13 @@ yargs@^15.3.1, yargs@^15.4.1: y18n "^4.0.0" yargs-parser "^18.1.2" -yauzl@2.10.0: +yauzl@^2.10.0: version "2.10.0" resolved "https://registry.npm.taobao.org/yauzl/download/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" dependencies: buffer-crc32 "~0.2.3" fd-slicer "~1.1.0" -yauzl@2.4.1: - version "2.4.1" - resolved "https://registry.npm.taobao.org/yauzl/download/yauzl-2.4.1.tgz#9528f442dab1b2284e58b4379bb194e22e0c4005" - dependencies: - fd-slicer "~1.0.1" - yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.nlark.com/yocto-queue/download/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"