@os-team/profile 1.1.5 → 1.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/session/SessionDrawer.js +7 -6
- package/dist/cjs/components/session/SessionDrawer.js.map +1 -1
- package/dist/cjs/components/session/SessionList.js +1 -1
- package/dist/cjs/components/session/SessionList.js.map +1 -1
- package/dist/cjs/components/session/__generated__/SessionListItem_session.graphql.js +1 -1
- package/dist/cjs/components/session/__generated__/SessionListItem_session.graphql.js.map +1 -1
- package/dist/cjs/components/session/__generated__/SessionList_sessions.graphql.js +1 -1
- package/dist/cjs/components/session/__generated__/SessionList_sessions.graphql.js.map +1 -1
- package/dist/cjs/components/session/formatDate.js +2 -2
- package/dist/cjs/components/session/formatDate.js.map +1 -1
- package/dist/cjs/components/session/getLastSeen.js.map +1 -1
- package/dist/esm/components/session/SessionDrawer.js +7 -6
- package/dist/esm/components/session/SessionDrawer.js.map +1 -1
- package/dist/esm/components/session/SessionList.js +1 -1
- package/dist/esm/components/session/SessionList.js.map +1 -1
- package/dist/esm/components/session/__generated__/SessionListItem_session.graphql.js +1 -1
- package/dist/esm/components/session/__generated__/SessionListItem_session.graphql.js.map +1 -1
- package/dist/esm/components/session/__generated__/SessionList_sessions.graphql.js +1 -1
- package/dist/esm/components/session/__generated__/SessionList_sessions.graphql.js.map +1 -1
- package/dist/esm/components/session/formatDate.js +2 -2
- package/dist/esm/components/session/formatDate.js.map +1 -1
- package/dist/esm/components/session/getLastSeen.js.map +1 -1
- package/dist/types/src/lib/components/session/SessionDrawer.d.ts +1 -1
- package/dist/types/src/lib/components/session/SessionDrawer.d.ts.map +1 -1
- package/dist/types/src/lib/components/session/SessionList.d.ts.map +1 -1
- package/dist/types/src/lib/components/session/__generated__/SessionListItem_session.graphql.d.ts +1 -1
- package/dist/types/src/lib/components/session/__generated__/SessionListItem_session.graphql.d.ts.map +1 -1
- package/dist/types/src/lib/components/session/__generated__/SessionList_sessions.graphql.d.ts +1 -1
- package/dist/types/src/lib/components/session/__generated__/SessionList_sessions.graphql.d.ts.map +1 -1
- package/dist/types/src/lib/components/session/formatDate.d.ts +1 -1
- package/dist/types/src/lib/components/session/formatDate.d.ts.map +1 -1
- package/dist/types/src/lib/components/session/getLastSeen.d.ts +1 -1
- package/package.json +1 -8
|
@@ -4,12 +4,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
8
7
|
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
9
8
|
var _core = require("@os-design/core");
|
|
10
|
-
var _reactI18next = require("react-i18next");
|
|
11
|
-
var _theming = require("@os-design/theming");
|
|
12
9
|
var _media = require("@os-design/media");
|
|
10
|
+
var _theming = require("@os-design/theming");
|
|
11
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _reactI18next = require("react-i18next");
|
|
13
13
|
var _SessionListSkeleton = _interopRequireDefault(require("./SessionListSkeleton"));
|
|
14
14
|
var _templateObject, _templateObject2;
|
|
15
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -23,6 +23,9 @@ var LazySessionDrawerContent = /*#__PURE__*/(0, _react.lazy)(function () {
|
|
|
23
23
|
return _interopRequireWildcard(require('./SessionDrawerContent'));
|
|
24
24
|
});
|
|
25
25
|
});
|
|
26
|
+
var overrides = {
|
|
27
|
+
horizontalPadding: [1, 1]
|
|
28
|
+
};
|
|
26
29
|
var StyledPageHeader = (0, _styled.default)(_core.PageHeader)(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n position: relative;\n"])));
|
|
27
30
|
var StyledAlert = (0, _styled.default)(_core.Alert)(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n border-radius: 0;\n"])));
|
|
28
31
|
var SessionDrawer = function SessionDrawer(props) {
|
|
@@ -33,9 +36,7 @@ var SessionDrawer = function SessionDrawer(props) {
|
|
|
33
36
|
placement: "right",
|
|
34
37
|
width: isMinSm ? '24em' : '90%'
|
|
35
38
|
}, props), /*#__PURE__*/_react.default.createElement(_theming.ThemeOverrider, {
|
|
36
|
-
overrides:
|
|
37
|
-
horizontalPadding: [1, 1]
|
|
38
|
-
}
|
|
39
|
+
overrides: overrides
|
|
39
40
|
}, /*#__PURE__*/_react.default.createElement(_core.Layout, null, /*#__PURE__*/_react.default.createElement(StyledPageHeader, {
|
|
40
41
|
title: t('profile:sessions.title')
|
|
41
42
|
}), /*#__PURE__*/_react.default.createElement(StyledAlert, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionDrawer.js","names":["
|
|
1
|
+
{"version":3,"file":"SessionDrawer.js","names":["_styled","_interopRequireDefault","require","_core","_media","_theming","_react","_interopRequireWildcard","_reactI18next","_SessionListSkeleton","_templateObject","_templateObject2","obj","__esModule","default","_typeof","Symbol","iterator","constructor","prototype","_extends","Object","assign","bind","target","i","arguments","length","source","key","hasOwnProperty","call","apply","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","cache","has","get","newObj","hasPropertyDescriptor","defineProperty","getOwnPropertyDescriptor","desc","set","LazySessionDrawerContent","lazy","Promise","resolve","then","overrides","horizontalPadding","StyledPageHeader","styled","PageHeader","StyledAlert","Alert","SessionDrawer","props","_useTranslation","useTranslation","t","isMinSm","useIsMinWidth","createElement","Drawer","placement","width","ThemeOverrider","Layout","title","type","size","Suspense","fallback","_default","exports"],"sources":["../../../../src/lib/components/session/SessionDrawer.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport {\n Alert,\n Drawer,\n DrawerProps,\n Layout,\n PageHeader,\n} from '@os-design/core';\nimport { useIsMinWidth } from '@os-design/media';\nimport { Theme, ThemeOverrider } from '@os-design/theming';\nimport React, { lazy, Suspense } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport SessionListSkeleton from './SessionListSkeleton';\n\nconst LazySessionDrawerContent = lazy(() => import('./SessionDrawerContent'));\n\nconst overrides: Partial<Theme> = { horizontalPadding: [1, 1] };\n\nconst StyledPageHeader = styled(PageHeader)`\n position: relative;\n`;\n\nconst StyledAlert = styled(Alert)`\n border-radius: 0;\n`;\n\nconst SessionDrawer: React.FC<DrawerProps> = (props) => {\n const { t } = useTranslation(['profile']);\n const isMinSm = useIsMinWidth('sm');\n\n return (\n <Drawer placement='right' width={isMinSm ? '24em' : '90%'} {...props}>\n <ThemeOverrider overrides={overrides}>\n <Layout>\n <StyledPageHeader title={t('profile:sessions.title')} />\n\n <StyledAlert type='info' size='small'>\n {t('profile:sessions.description')}\n </StyledAlert>\n\n <Suspense fallback={<SessionListSkeleton />}>\n <LazySessionDrawerContent />\n </Suspense>\n </Layout>\n </ThemeOverrider>\n </Drawer>\n );\n};\n\nexport default SessionDrawer;\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAOA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAC,uBAAA,CAAAL,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AACA,IAAAO,oBAAA,GAAAR,sBAAA,CAAAC,OAAA;AAAwD,IAAAQ,eAAA,EAAAC,gBAAA;AAAA,SAAAV,uBAAAW,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,QAAAH,GAAA,sCAAAG,OAAA,wBAAAC,MAAA,uBAAAA,MAAA,CAAAC,QAAA,aAAAL,GAAA,kBAAAA,GAAA,gBAAAA,GAAA,WAAAA,GAAA,yBAAAI,MAAA,IAAAJ,GAAA,CAAAM,WAAA,KAAAF,MAAA,IAAAJ,GAAA,KAAAI,MAAA,CAAAG,SAAA,qBAAAP,GAAA,KAAAG,OAAA,CAAAH,GAAA;AAAA,SAAAQ,SAAA,IAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAI,GAAA,IAAAD,MAAA,QAAAP,MAAA,CAAAF,SAAA,CAAAW,cAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAC,GAAA,KAAAL,MAAA,CAAAK,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAL,MAAA,YAAAJ,QAAA,CAAAY,KAAA,OAAAN,SAAA;AAAA,SAAAO,uBAAAC,OAAA,EAAAC,GAAA,SAAAA,GAAA,IAAAA,GAAA,GAAAD,OAAA,CAAAE,KAAA,cAAAf,MAAA,CAAAgB,MAAA,CAAAhB,MAAA,CAAAiB,gBAAA,CAAAJ,OAAA,IAAAC,GAAA,IAAAI,KAAA,EAAAlB,MAAA,CAAAgB,MAAA,CAAAF,GAAA;AAAA,SAAAK,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAlC,wBAAAK,GAAA,EAAA6B,WAAA,SAAAA,WAAA,IAAA7B,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAG,OAAA,CAAAH,GAAA,yBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAiC,KAAA,GAAAL,wBAAA,CAAAC,WAAA,OAAAI,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAlC,GAAA,YAAAiC,KAAA,CAAAE,GAAA,CAAAnC,GAAA,SAAAoC,MAAA,WAAAC,qBAAA,GAAA5B,MAAA,CAAA6B,cAAA,IAAA7B,MAAA,CAAA8B,wBAAA,WAAAtB,GAAA,IAAAjB,GAAA,QAAAiB,GAAA,kBAAAR,MAAA,CAAAF,SAAA,CAAAW,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAiB,GAAA,SAAAuB,IAAA,GAAAH,qBAAA,GAAA5B,MAAA,CAAA8B,wBAAA,CAAAvC,GAAA,EAAAiB,GAAA,cAAAuB,IAAA,KAAAA,IAAA,CAAAL,GAAA,IAAAK,IAAA,CAAAC,GAAA,KAAAhC,MAAA,CAAA6B,cAAA,CAAAF,MAAA,EAAAnB,GAAA,EAAAuB,IAAA,YAAAJ,MAAA,CAAAnB,GAAA,IAAAjB,GAAA,CAAAiB,GAAA,SAAAmB,MAAA,CAAAlC,OAAA,GAAAF,GAAA,MAAAiC,KAAA,IAAAA,KAAA,CAAAQ,GAAA,CAAAzC,GAAA,EAAAoC,MAAA,YAAAA,MAAA;AAExD,IAAMM,wBAAwB,gBAAG,IAAAC,WAAI,EAAC;EAAA,OAAAC,OAAA,CAAAC,OAAA,GAAAC,IAAA;IAAA,OAAAnD,uBAAA,CAAAL,OAAA,CAAa,wBAAwB;EAAA;AAAA,CAAC,CAAC;AAE7E,IAAMyD,SAAyB,GAAG;EAAEC,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC;AAAE,CAAC;AAE/D,IAAMC,gBAAgB,GAAG,IAAAC,eAAM,EAACC,gBAAU,CAAC,CAAArD,eAAA,KAAAA,eAAA,GAAAuB,sBAAA,iCAE1C;AAED,IAAM+B,WAAW,GAAG,IAAAF,eAAM,EAACG,WAAK,CAAC,CAAAtD,gBAAA,KAAAA,gBAAA,GAAAsB,sBAAA,+BAEhC;AAED,IAAMiC,aAAoC,GAAG,SAAvCA,aAAoCA,CAAIC,KAAK,EAAK;EACtD,IAAAC,eAAA,GAAc,IAAAC,4BAAc,EAAC,CAAC,SAAS,CAAC,CAAC;IAAjCC,CAAC,GAAAF,eAAA,CAADE,CAAC;EACT,IAAMC,OAAO,GAAG,IAAAC,oBAAa,EAAC,IAAI,CAAC;EAEnC,oBACElE,MAAA,CAAAQ,OAAA,CAAA2D,aAAA,CAACtE,KAAA,CAAAuE,MAAM,EAAAtD,QAAA;IAACuD,SAAS,EAAC,OAAO;IAACC,KAAK,EAAEL,OAAO,GAAG,MAAM,GAAG;EAAM,GAAKJ,KAAK,gBAClE7D,MAAA,CAAAQ,OAAA,CAAA2D,aAAA,CAACpE,QAAA,CAAAwE,cAAc;IAAClB,SAAS,EAAEA;EAAU,gBACnCrD,MAAA,CAAAQ,OAAA,CAAA2D,aAAA,CAACtE,KAAA,CAAA2E,MAAM,qBACLxE,MAAA,CAAAQ,OAAA,CAAA2D,aAAA,CAACZ,gBAAgB;IAACkB,KAAK,EAAET,CAAC,CAAC,wBAAwB;EAAE,CAAE,CAAC,eAExDhE,MAAA,CAAAQ,OAAA,CAAA2D,aAAA,CAACT,WAAW;IAACgB,IAAI,EAAC,MAAM;IAACC,IAAI,EAAC;EAAO,GAClCX,CAAC,CAAC,8BAA8B,CACtB,CAAC,eAEdhE,MAAA,CAAAQ,OAAA,CAAA2D,aAAA,CAACnE,MAAA,CAAA4E,QAAQ;IAACC,QAAQ,eAAE7E,MAAA,CAAAQ,OAAA,CAAA2D,aAAA,CAAChE,oBAAA,CAAAK,OAAmB,MAAE;EAAE,gBAC1CR,MAAA,CAAAQ,OAAA,CAAA2D,aAAA,CAACnB,wBAAwB,MAAE,CACnB,CACJ,CACM,CACV,CAAC;AAEb,CAAC;AAAC,IAAA8B,QAAA,GAEalB,aAAa;AAAAmB,OAAA,CAAAvE,OAAA,GAAAsE,QAAA"}
|
|
@@ -51,7 +51,7 @@ var SessionList = function SessionList(_ref) {
|
|
|
51
51
|
return sessions.filter(function (session) {
|
|
52
52
|
return !session.current;
|
|
53
53
|
}).sort(function (a, b) {
|
|
54
|
-
return
|
|
54
|
+
return b.lastSeenAt - a.lastSeenAt;
|
|
55
55
|
});
|
|
56
56
|
}, [sessions]);
|
|
57
57
|
var _useMutation = (0, _hooks.useMutation)(_SessionListDestroyAllOtherSessionsMutation !== void 0 ? _SessionListDestroyAllOtherSessionsMutation : (_SessionListDestroyAllOtherSessionsMutation = require("./__generated__/SessionListDestroyAllOtherSessionsMutation.graphql"), _SessionListDestroyAllOtherSessionsMutation.hash && _SessionListDestroyAllOtherSessionsMutation.hash !== "016b6b5e7ae228f7df552d97fa43bd40" && console.error("The definition of 'SessionListDestroyAllOtherSessionsMutation' appears to have changed. Run `relay-compiler` to update the generated files to receive the expected data."), _SessionListDestroyAllOtherSessionsMutation)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionList.js","names":["_react","_interopRequireWildcard","require","_hooks","_core","_styled","_interopRequireDefault","_reactI18next","_theming","_SessionListItem","_SessionList_sessions","_SessionListDestroyAllOtherSessionsMutation","_templateObject","_templateObject2","_templateObject3","_templateObject4","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_taggedTemplateLiteral","strings","raw","freeze","defineProperties","sessionsFragment","hash","console","error","Title","styled","div","exports","List","p","clr","theme","listItemColorBorder","DestroyAllOtherSessionsButton","Button","OtherSessions","SESSION_LIST_PADDING_VERTICAL","SessionList","_ref","sessionsKey","_useFragment","useFragment","sessions","_useTranslation","useTranslation","t","currentSession","useMemo","find","session","current","otherSessions","filter","sort","a","b","Date","lastSeenAt","getTime","_useMutation","useMutation","_useMutation2","commitDestroyAllOtherSessions","loadingDestroyAllOtherSessions","destroyAllOtherSessions","useCallback","variables","updater","store","record","sessionRecords","getLinkedRecords","setLinkedRecords","item","getDataID","id","onError","message","onCompleted","success","createElement","Fragment","sessionKey","hideLastSeenAt","type","danger","size","wide","loading","onClick","map","_default"],"sources":["../../../../src/lib/components/session/SessionList.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react';\nimport graphql from 'babel-plugin-relay/macro';\nimport { useFragment, useMutation } from 'react-relay/hooks';\nimport { Button, message } from '@os-design/core';\nimport styled from '@emotion/styled';\nimport { useTranslation } from 'react-i18next';\nimport { clr } from '@os-design/theming';\nimport { SessionList_sessions$key } from './__generated__/SessionList_sessions.graphql';\nimport SessionListItem from './SessionListItem';\nimport { SessionListDestroyAllOtherSessionsMutation } from './__generated__/SessionListDestroyAllOtherSessionsMutation.graphql';\n\nconst sessionsFragment = graphql`\n fragment SessionList_sessions on Query\n @refetchable(queryName: \"SessionListRefetchQuery\") {\n sessions {\n id\n current\n lastSeenAt\n ...SessionListItem_session\n }\n }\n`;\n\ninterface SessionListProps {\n sessionsKey: SessionList_sessions$key;\n}\n\nexport const Title = styled.div`\n font-weight: 500;\n margin: 1em 1em 0.5em;\n`;\n\nexport const List = styled.div`\n border-top: 1px solid ${(p) => clr(p.theme.listItemColorBorder)};\n border-bottom: 1px solid ${(p) => clr(p.theme.listItemColorBorder)};\n`;\n\nconst DestroyAllOtherSessionsButton = styled(Button)`\n & > span {\n flex: 1;\n text-align: left;\n }\n`;\n\nconst OtherSessions = styled.div`\n margin-top: 2em;\n`;\n\nexport const SESSION_LIST_PADDING_VERTICAL = 0.5;\n\nconst SessionList: React.FC<SessionListProps> = ({ sessionsKey }) => {\n const { sessions } = useFragment(sessionsFragment, sessionsKey);\n const { t } = useTranslation(['profile']);\n\n const currentSession = useMemo(\n () => sessions.find((session) => session.current),\n [sessions]\n );\n\n const otherSessions = useMemo(\n () =>\n sessions\n .filter((session) => !session.current)\n .sort(\n (a, b) =>\n new Date(b.lastSeenAt).getTime() - new Date(a.lastSeenAt).getTime()\n ),\n [sessions]\n );\n\n const [commitDestroyAllOtherSessions, loadingDestroyAllOtherSessions] =\n useMutation<SessionListDestroyAllOtherSessionsMutation>(graphql`\n mutation SessionListDestroyAllOtherSessionsMutation {\n destroyAllOtherSessions {\n ok\n }\n }\n `);\n\n const destroyAllOtherSessions = useCallback(() => {\n commitDestroyAllOtherSessions({\n variables: {},\n updater: (store) => {\n const record = store.get('client:root');\n if (!record) return;\n\n const sessionRecords = record.getLinkedRecords('sessions');\n if (!sessionRecords) return;\n\n record.setLinkedRecords(\n sessionRecords.filter(\n (item) => item.getDataID() === currentSession?.id\n ),\n 'sessions'\n );\n },\n onError: (error) => {\n message.error(error.message);\n },\n onCompleted: () => {\n message.success(t('profile:sessions.destroyedAllOther'));\n },\n });\n }, [commitDestroyAllOtherSessions, currentSession?.id, t]);\n\n return (\n <>\n {currentSession && (\n <>\n <Title>{t('profile:sessions.current')}</Title>\n <List>\n <SessionListItem sessionKey={currentSession} hideLastSeenAt />\n </List>\n </>\n )}\n\n {otherSessions.length > 0 && (\n <>\n <DestroyAllOtherSessionsButton\n type='ghost'\n danger\n size='small'\n wide='always'\n loading={loadingDestroyAllOtherSessions}\n onClick={destroyAllOtherSessions}\n >\n {t('profile:sessions.destroyAllOther')}\n </DestroyAllOtherSessionsButton>\n\n <OtherSessions>\n <Title>\n {t('profile:sessions.other')} ({otherSessions.length})\n </Title>\n <List>\n {otherSessions.map((session) => (\n <SessionListItem key={session.id} sessionKey={session} />\n ))}\n </List>\n </OtherSessions>\n </>\n )}\n </>\n );\n};\n\nexport default SessionList;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SessionList.js","names":["_react","_interopRequireWildcard","require","_hooks","_core","_styled","_interopRequireDefault","_reactI18next","_theming","_SessionListItem","_SessionList_sessions","_SessionListDestroyAllOtherSessionsMutation","_templateObject","_templateObject2","_templateObject3","_templateObject4","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_taggedTemplateLiteral","strings","raw","freeze","defineProperties","sessionsFragment","hash","console","error","Title","styled","div","exports","List","p","clr","theme","listItemColorBorder","DestroyAllOtherSessionsButton","Button","OtherSessions","SESSION_LIST_PADDING_VERTICAL","SessionList","_ref","sessionsKey","_useFragment","useFragment","sessions","_useTranslation","useTranslation","t","currentSession","useMemo","find","session","current","otherSessions","filter","sort","a","b","lastSeenAt","_useMutation","useMutation","_useMutation2","commitDestroyAllOtherSessions","loadingDestroyAllOtherSessions","destroyAllOtherSessions","useCallback","variables","updater","store","record","sessionRecords","getLinkedRecords","setLinkedRecords","item","getDataID","id","onError","message","onCompleted","success","createElement","Fragment","sessionKey","hideLastSeenAt","type","danger","size","wide","loading","onClick","map","_default"],"sources":["../../../../src/lib/components/session/SessionList.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react';\nimport graphql from 'babel-plugin-relay/macro';\nimport { useFragment, useMutation } from 'react-relay/hooks';\nimport { Button, message } from '@os-design/core';\nimport styled from '@emotion/styled';\nimport { useTranslation } from 'react-i18next';\nimport { clr } from '@os-design/theming';\nimport { SessionList_sessions$key } from './__generated__/SessionList_sessions.graphql';\nimport SessionListItem from './SessionListItem';\nimport { SessionListDestroyAllOtherSessionsMutation } from './__generated__/SessionListDestroyAllOtherSessionsMutation.graphql';\n\nconst sessionsFragment = graphql`\n fragment SessionList_sessions on Query\n @refetchable(queryName: \"SessionListRefetchQuery\") {\n sessions {\n id\n current\n lastSeenAt\n ...SessionListItem_session\n }\n }\n`;\n\ninterface SessionListProps {\n sessionsKey: SessionList_sessions$key;\n}\n\nexport const Title = styled.div`\n font-weight: 500;\n margin: 1em 1em 0.5em;\n`;\n\nexport const List = styled.div`\n border-top: 1px solid ${(p) => clr(p.theme.listItemColorBorder)};\n border-bottom: 1px solid ${(p) => clr(p.theme.listItemColorBorder)};\n`;\n\nconst DestroyAllOtherSessionsButton = styled(Button)`\n & > span {\n flex: 1;\n text-align: left;\n }\n`;\n\nconst OtherSessions = styled.div`\n margin-top: 2em;\n`;\n\nexport const SESSION_LIST_PADDING_VERTICAL = 0.5;\n\nconst SessionList: React.FC<SessionListProps> = ({ sessionsKey }) => {\n const { sessions } = useFragment(sessionsFragment, sessionsKey);\n const { t } = useTranslation(['profile']);\n\n const currentSession = useMemo(\n () => sessions.find((session) => session.current),\n [sessions]\n );\n\n const otherSessions = useMemo(\n () =>\n sessions\n .filter((session) => !session.current)\n .sort((a, b) => b.lastSeenAt - a.lastSeenAt),\n [sessions]\n );\n\n const [commitDestroyAllOtherSessions, loadingDestroyAllOtherSessions] =\n useMutation<SessionListDestroyAllOtherSessionsMutation>(graphql`\n mutation SessionListDestroyAllOtherSessionsMutation {\n destroyAllOtherSessions {\n ok\n }\n }\n `);\n\n const destroyAllOtherSessions = useCallback(() => {\n commitDestroyAllOtherSessions({\n variables: {},\n updater: (store) => {\n const record = store.get('client:root');\n if (!record) return;\n\n const sessionRecords = record.getLinkedRecords('sessions');\n if (!sessionRecords) return;\n\n record.setLinkedRecords(\n sessionRecords.filter(\n (item) => item.getDataID() === currentSession?.id\n ),\n 'sessions'\n );\n },\n onError: (error) => {\n message.error(error.message);\n },\n onCompleted: () => {\n message.success(t('profile:sessions.destroyedAllOther'));\n },\n });\n }, [commitDestroyAllOtherSessions, currentSession?.id, t]);\n\n return (\n <>\n {currentSession && (\n <>\n <Title>{t('profile:sessions.current')}</Title>\n <List>\n <SessionListItem sessionKey={currentSession} hideLastSeenAt />\n </List>\n </>\n )}\n\n {otherSessions.length > 0 && (\n <>\n <DestroyAllOtherSessionsButton\n type='ghost'\n danger\n size='small'\n wide='always'\n loading={loadingDestroyAllOtherSessions}\n onClick={destroyAllOtherSessions}\n >\n {t('profile:sessions.destroyAllOther')}\n </DestroyAllOtherSessionsButton>\n\n <OtherSessions>\n <Title>\n {t('profile:sessions.other')} ({otherSessions.length})\n </Title>\n <List>\n {otherSessions.map((session) => (\n <SessionListItem key={session.id} sessionKey={session} />\n ))}\n </List>\n </OtherSessions>\n </>\n )}\n </>\n );\n};\n\nexport default SessionList;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionListItem_session.graphql.js","names":["node","hash","_default","exports","default"],"sources":["../../../../../src/lib/components/session/__generated__/SessionListItem_session.graphql.ts"],"sourcesContent":["/**\n * @generated SignedSource<<
|
|
1
|
+
{"version":3,"file":"SessionListItem_session.graphql.js","names":["node","hash","_default","exports","default"],"sources":["../../../../../src/lib/components/session/__generated__/SessionListItem_session.graphql.ts"],"sourcesContent":["/**\n * @generated SignedSource<<32f6e8f24d283a95f3c1c75b7911dc5a>>\n * @lightSyntaxTransform\n * @nogrep\n */\n\n/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n\nimport { Fragment, ReaderFragment } from 'relay-runtime';\nimport { FragmentRefs } from \"relay-runtime\";\nexport type SessionListItem_session$data = {\n readonly browserName: string | null;\n readonly browserVersion: string | null;\n readonly city: string | null;\n readonly country: string | null;\n readonly deviceBrand: string | null;\n readonly deviceManufacturer: string | null;\n readonly deviceModel: string | null;\n readonly deviceName: string | null;\n readonly deviceType: string | null;\n readonly id: string;\n readonly ip: string | null;\n readonly isApp: boolean;\n readonly lastSeenAt: any;\n readonly osName: string | null;\n readonly osVersion: string | null;\n readonly \" $fragmentType\": \"SessionListItem_session\";\n};\nexport type SessionListItem_session$key = {\n readonly \" $data\"?: SessionListItem_session$data;\n readonly \" $fragmentSpreads\": FragmentRefs<\"SessionListItem_session\">;\n};\n\nconst node: ReaderFragment = {\n \"argumentDefinitions\": [],\n \"kind\": \"Fragment\",\n \"metadata\": null,\n \"name\": \"SessionListItem_session\",\n \"selections\": [\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"id\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"isApp\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"browserName\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"browserVersion\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"osName\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"osVersion\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"deviceType\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"deviceName\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"deviceManufacturer\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"deviceBrand\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"deviceModel\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"ip\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"country\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"city\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"lastSeenAt\",\n \"storageKey\": null\n }\n ],\n \"type\": \"SessionPayload\",\n \"abstractKey\": null\n};\n\n(node as any).hash = \"c73c341c5f6e75f7bef7402186ce242b\";\n\nexport default node;\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AA2BA,IAAMA,IAAoB,GAAG;EAC3B,qBAAqB,EAAE,EAAE;EACzB,MAAM,EAAE,UAAU;EAClB,UAAU,EAAE,IAAI;EAChB,MAAM,EAAE,yBAAyB;EACjC,YAAY,EAAE,CACZ;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,IAAI;IACZ,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,OAAO;IACf,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;IACrB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,gBAAgB;IACxB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,QAAQ;IAChB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,WAAW;IACnB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,YAAY;IACpB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,YAAY;IACpB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,oBAAoB;IAC5B,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;IACrB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;IACrB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,IAAI;IACZ,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,SAAS;IACjB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,MAAM;IACd,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,YAAY;IACpB,YAAY,EAAE;EAChB,CAAC,CACF;EACD,MAAM,EAAE,gBAAgB;EACxB,aAAa,EAAE;AACjB,CAAC;AAEAA,IAAI,CAASC,IAAI,GAAG,kCAAkC;AAAC,IAAAC,QAAA,GAEzCF,IAAI;AAAAG,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionList_sessions.graphql.js","names":["node","require","hash","_default","exports","default"],"sources":["../../../../../src/lib/components/session/__generated__/SessionList_sessions.graphql.ts"],"sourcesContent":["/**\n * @generated SignedSource<<
|
|
1
|
+
{"version":3,"file":"SessionList_sessions.graphql.js","names":["node","require","hash","_default","exports","default"],"sources":["../../../../../src/lib/components/session/__generated__/SessionList_sessions.graphql.ts"],"sourcesContent":["/**\n * @generated SignedSource<<a698059af5f9c23c9705fd96821de4d5>>\n * @lightSyntaxTransform\n * @nogrep\n */\n\n/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n\nimport { ReaderFragment, RefetchableFragment } from 'relay-runtime';\nimport { FragmentRefs } from \"relay-runtime\";\nexport type SessionList_sessions$data = {\n readonly sessions: ReadonlyArray<{\n readonly current: boolean;\n readonly id: string;\n readonly lastSeenAt: any;\n readonly \" $fragmentSpreads\": FragmentRefs<\"SessionListItem_session\">;\n }>;\n readonly \" $fragmentType\": \"SessionList_sessions\";\n};\nexport type SessionList_sessions$key = {\n readonly \" $data\"?: SessionList_sessions$data;\n readonly \" $fragmentSpreads\": FragmentRefs<\"SessionList_sessions\">;\n};\n\nconst node: ReaderFragment = {\n \"argumentDefinitions\": [],\n \"kind\": \"Fragment\",\n \"metadata\": {\n \"refetch\": {\n \"connection\": null,\n \"fragmentPathInResult\": [],\n \"operation\": require('./SessionListRefetchQuery.graphql')\n }\n },\n \"name\": \"SessionList_sessions\",\n \"selections\": [\n {\n \"alias\": null,\n \"args\": null,\n \"concreteType\": \"SessionPayload\",\n \"kind\": \"LinkedField\",\n \"name\": \"sessions\",\n \"plural\": true,\n \"selections\": [\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"id\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"current\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"lastSeenAt\",\n \"storageKey\": null\n },\n {\n \"args\": null,\n \"kind\": \"FragmentSpread\",\n \"name\": \"SessionListItem_session\"\n }\n ],\n \"storageKey\": null\n }\n ],\n \"type\": \"Query\",\n \"abstractKey\": null\n};\n\n(node as any).hash = \"1b21c937c7ba795f09bfcb5ada7d2510\";\n\nexport default node;\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAkBA,IAAMA,IAAoB,GAAG;EAC3B,qBAAqB,EAAE,EAAE;EACzB,MAAM,EAAE,UAAU;EAClB,UAAU,EAAE;IACV,SAAS,EAAE;MACT,YAAY,EAAE,IAAI;MAClB,sBAAsB,EAAE,EAAE;MAC1B,WAAW,EAAEC,OAAO,CAAC,mCAAmC;IAC1D;EACF,CAAC;EACD,MAAM,EAAE,sBAAsB;EAC9B,YAAY,EAAE,CACZ;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,cAAc,EAAE,gBAAgB;IAChC,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,UAAU;IAClB,QAAQ,EAAE,IAAI;IACd,YAAY,EAAE,CACZ;MACE,OAAO,EAAE,IAAI;MACb,MAAM,EAAE,IAAI;MACZ,MAAM,EAAE,aAAa;MACrB,MAAM,EAAE,IAAI;MACZ,YAAY,EAAE;IAChB,CAAC,EACD;MACE,OAAO,EAAE,IAAI;MACb,MAAM,EAAE,IAAI;MACZ,MAAM,EAAE,aAAa;MACrB,MAAM,EAAE,SAAS;MACjB,YAAY,EAAE;IAChB,CAAC,EACD;MACE,OAAO,EAAE,IAAI;MACb,MAAM,EAAE,IAAI;MACZ,MAAM,EAAE,aAAa;MACrB,MAAM,EAAE,YAAY;MACpB,YAAY,EAAE;IAChB,CAAC,EACD;MACE,MAAM,EAAE,IAAI;MACZ,MAAM,EAAE,gBAAgB;MACxB,MAAM,EAAE;IACV,CAAC,CACF;IACD,YAAY,EAAE;EAChB,CAAC,CACF;EACD,MAAM,EAAE,OAAO;EACf,aAAa,EAAE;AACjB,CAAC;AAEAD,IAAI,CAASE,IAAI,GAAG,kCAAkC;AAAC,IAAAC,QAAA,GAEzCH,IAAI;AAAAI,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
|
@@ -4,8 +4,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var formatDate = function formatDate(
|
|
8
|
-
var date = new Date(
|
|
7
|
+
var formatDate = function formatDate(timestamp, t, lng) {
|
|
8
|
+
var date = new Date(timestamp);
|
|
9
9
|
var day = date.getDate();
|
|
10
10
|
var month = t('profile:sessions.monthAbbreviations', {
|
|
11
11
|
returnObjects: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatDate.js","names":["formatDate","
|
|
1
|
+
{"version":3,"file":"formatDate.js","names":["formatDate","timestamp","t","lng","date","Date","day","getDate","month","returnObjects","getMonth","year","getFullYear","isPrevYear","concat","_default","exports","default"],"sources":["../../../../src/lib/components/session/formatDate.ts"],"sourcesContent":["import { TFunction } from 'i18next';\n\nconst formatDate = (timestamp: number, t: TFunction, lng: string): string => {\n const date = new Date(timestamp);\n\n const day = date.getDate();\n const month = t('profile:sessions.monthAbbreviations', {\n returnObjects: true,\n })[date.getMonth()];\n const year = date.getFullYear();\n const isPrevYear = year < new Date().getFullYear();\n\n if (lng === 'ru') return `${day} ${month}${isPrevYear ? ` ${year}` : ''}`;\n return `${month} ${day}${isPrevYear ? `, ${year}` : ''}`;\n};\n\nexport default formatDate;\n"],"mappings":";;;;;;AAEA,IAAMA,UAAU,GAAG,SAAbA,UAAUA,CAAIC,SAAiB,EAAEC,CAAY,EAAEC,GAAW,EAAa;EAC3E,IAAMC,IAAI,GAAG,IAAIC,IAAI,CAACJ,SAAS,CAAC;EAEhC,IAAMK,GAAG,GAAGF,IAAI,CAACG,OAAO,CAAC,CAAC;EAC1B,IAAMC,KAAK,GAAGN,CAAC,CAAC,qCAAqC,EAAE;IACrDO,aAAa,EAAE;EACjB,CAAC,CAAC,CAACL,IAAI,CAACM,QAAQ,CAAC,CAAC,CAAC;EACnB,IAAMC,IAAI,GAAGP,IAAI,CAACQ,WAAW,CAAC,CAAC;EAC/B,IAAMC,UAAU,GAAGF,IAAI,GAAG,IAAIN,IAAI,CAAC,CAAC,CAACO,WAAW,CAAC,CAAC;EAElD,IAAIT,GAAG,KAAK,IAAI,EAAE,UAAAW,MAAA,CAAUR,GAAG,OAAAQ,MAAA,CAAIN,KAAK,EAAAM,MAAA,CAAGD,UAAU,OAAAC,MAAA,CAAOH,IAAI,IAAK,EAAE;EACvE,UAAAG,MAAA,CAAUN,KAAK,OAAAM,MAAA,CAAIR,GAAG,EAAAQ,MAAA,CAAGD,UAAU,QAAAC,MAAA,CAAQH,IAAI,IAAK,EAAE;AACxD,CAAC;AAAC,IAAAI,QAAA,GAEaf,UAAU;AAAAgB,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLastSeen.js","names":["getLastSeen","lastSeenAt","date","Date","milliseconds","now","getTime","seconds","Math","floor","minutes","hours","_default","exports","default"],"sources":["../../../../src/lib/components/session/getLastSeen.ts"],"sourcesContent":["const getLastSeen = (\n lastSeenAt:
|
|
1
|
+
{"version":3,"file":"getLastSeen.js","names":["getLastSeen","lastSeenAt","date","Date","milliseconds","now","getTime","seconds","Math","floor","minutes","hours","_default","exports","default"],"sources":["../../../../src/lib/components/session/getLastSeen.ts"],"sourcesContent":["const getLastSeen = (\n lastSeenAt: number\n): [number, 'hours' | 'minutes' | 'seconds'] | null => {\n const date = new Date(lastSeenAt);\n const milliseconds = Date.now() - date.getTime();\n if (milliseconds <= 1000) return [1, 'seconds'];\n\n const seconds = Math.floor(milliseconds / 1000);\n if (seconds < 60) return [seconds, 'seconds'];\n\n const minutes = Math.floor(seconds / 60);\n if (minutes < 60) return [minutes, 'minutes'];\n\n const hours = Math.floor(minutes / 60);\n if (hours < 24) return [hours, 'hours'];\n\n return null;\n};\n\nexport default getLastSeen;\n"],"mappings":";;;;;;AAAA,IAAMA,WAAW,GAAG,SAAdA,WAAWA,CACfC,UAAkB,EACmC;EACrD,IAAMC,IAAI,GAAG,IAAIC,IAAI,CAACF,UAAU,CAAC;EACjC,IAAMG,YAAY,GAAGD,IAAI,CAACE,GAAG,CAAC,CAAC,GAAGH,IAAI,CAACI,OAAO,CAAC,CAAC;EAChD,IAAIF,YAAY,IAAI,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC;EAE/C,IAAMG,OAAO,GAAGC,IAAI,CAACC,KAAK,CAACL,YAAY,GAAG,IAAI,CAAC;EAC/C,IAAIG,OAAO,GAAG,EAAE,EAAE,OAAO,CAACA,OAAO,EAAE,SAAS,CAAC;EAE7C,IAAMG,OAAO,GAAGF,IAAI,CAACC,KAAK,CAACF,OAAO,GAAG,EAAE,CAAC;EACxC,IAAIG,OAAO,GAAG,EAAE,EAAE,OAAO,CAACA,OAAO,EAAE,SAAS,CAAC;EAE7C,IAAMC,KAAK,GAAGH,IAAI,CAACC,KAAK,CAACC,OAAO,GAAG,EAAE,CAAC;EACtC,IAAIC,KAAK,GAAG,EAAE,EAAE,OAAO,CAACA,KAAK,EAAE,OAAO,CAAC;EAEvC,OAAO,IAAI;AACb,CAAC;AAAC,IAAAC,QAAA,GAEaZ,WAAW;AAAAa,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
-
import React, { lazy, Suspense } from 'react';
|
|
3
2
|
import styled from '@emotion/styled';
|
|
4
3
|
import { Alert, Drawer, Layout, PageHeader } from '@os-design/core';
|
|
5
|
-
import { useTranslation } from 'react-i18next';
|
|
6
|
-
import { ThemeOverrider } from '@os-design/theming';
|
|
7
4
|
import { useIsMinWidth } from '@os-design/media';
|
|
5
|
+
import { ThemeOverrider } from '@os-design/theming';
|
|
6
|
+
import React, { lazy, Suspense } from 'react';
|
|
7
|
+
import { useTranslation } from 'react-i18next';
|
|
8
8
|
import SessionListSkeleton from './SessionListSkeleton';
|
|
9
9
|
const LazySessionDrawerContent = /*#__PURE__*/lazy(() => import('./SessionDrawerContent'));
|
|
10
|
+
const overrides = {
|
|
11
|
+
horizontalPadding: [1, 1]
|
|
12
|
+
};
|
|
10
13
|
const StyledPageHeader = styled(PageHeader)`
|
|
11
14
|
position: relative;
|
|
12
15
|
`;
|
|
@@ -22,9 +25,7 @@ const SessionDrawer = props => {
|
|
|
22
25
|
placement: "right",
|
|
23
26
|
width: isMinSm ? '24em' : '90%'
|
|
24
27
|
}, props), /*#__PURE__*/React.createElement(ThemeOverrider, {
|
|
25
|
-
overrides:
|
|
26
|
-
horizontalPadding: [1, 1]
|
|
27
|
-
}
|
|
28
|
+
overrides: overrides
|
|
28
29
|
}, /*#__PURE__*/React.createElement(Layout, null, /*#__PURE__*/React.createElement(StyledPageHeader, {
|
|
29
30
|
title: t('profile:sessions.title')
|
|
30
31
|
}), /*#__PURE__*/React.createElement(StyledAlert, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionDrawer.js","names":["
|
|
1
|
+
{"version":3,"file":"SessionDrawer.js","names":["styled","Alert","Drawer","Layout","PageHeader","useIsMinWidth","ThemeOverrider","React","lazy","Suspense","useTranslation","SessionListSkeleton","LazySessionDrawerContent","overrides","horizontalPadding","StyledPageHeader","StyledAlert","SessionDrawer","props","t","isMinSm","createElement","_extends","placement","width","title","type","size","fallback"],"sources":["../../../../src/lib/components/session/SessionDrawer.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport {\n Alert,\n Drawer,\n DrawerProps,\n Layout,\n PageHeader,\n} from '@os-design/core';\nimport { useIsMinWidth } from '@os-design/media';\nimport { Theme, ThemeOverrider } from '@os-design/theming';\nimport React, { lazy, Suspense } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport SessionListSkeleton from './SessionListSkeleton';\n\nconst LazySessionDrawerContent = lazy(() => import('./SessionDrawerContent'));\n\nconst overrides: Partial<Theme> = { horizontalPadding: [1, 1] };\n\nconst StyledPageHeader = styled(PageHeader)`\n position: relative;\n`;\n\nconst StyledAlert = styled(Alert)`\n border-radius: 0;\n`;\n\nconst SessionDrawer: React.FC<DrawerProps> = (props) => {\n const { t } = useTranslation(['profile']);\n const isMinSm = useIsMinWidth('sm');\n\n return (\n <Drawer placement='right' width={isMinSm ? '24em' : '90%'} {...props}>\n <ThemeOverrider overrides={overrides}>\n <Layout>\n <StyledPageHeader title={t('profile:sessions.title')} />\n\n <StyledAlert type='info' size='small'>\n {t('profile:sessions.description')}\n </StyledAlert>\n\n <Suspense fallback={<SessionListSkeleton />}>\n <LazySessionDrawerContent />\n </Suspense>\n </Layout>\n </ThemeOverrider>\n </Drawer>\n );\n};\n\nexport default SessionDrawer;\n"],"mappings":";AAAA,OAAOA,MAAM,MAAM,iBAAiB;AACpC,SACEC,KAAK,EACLC,MAAM,EAENC,MAAM,EACNC,UAAU,QACL,iBAAiB;AACxB,SAASC,aAAa,QAAQ,kBAAkB;AAChD,SAAgBC,cAAc,QAAQ,oBAAoB;AAC1D,OAAOC,KAAK,IAAIC,IAAI,EAAEC,QAAQ,QAAQ,OAAO;AAC7C,SAASC,cAAc,QAAQ,eAAe;AAC9C,OAAOC,mBAAmB,MAAM,uBAAuB;AAEvD,MAAMC,wBAAwB,gBAAGJ,IAAI,CAAC,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAE7E,MAAMK,SAAyB,GAAG;EAAEC,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC;AAAE,CAAC;AAE/D,MAAMC,gBAAgB,GAAGf,MAAM,CAACI,UAAU,CAAE;AAC5C;AACA,CAAC;AAED,MAAMY,WAAW,GAAGhB,MAAM,CAACC,KAAK,CAAE;AAClC;AACA,CAAC;AAED,MAAMgB,aAAoC,GAAIC,KAAK,IAAK;EACtD,MAAM;IAAEC;EAAE,CAAC,GAAGT,cAAc,CAAC,CAAC,SAAS,CAAC,CAAC;EACzC,MAAMU,OAAO,GAAGf,aAAa,CAAC,IAAI,CAAC;EAEnC,oBACEE,KAAA,CAAAc,aAAA,CAACnB,MAAM,EAAAoB,QAAA;IAACC,SAAS,EAAC,OAAO;IAACC,KAAK,EAAEJ,OAAO,GAAG,MAAM,GAAG;EAAM,GAAKF,KAAK,gBAClEX,KAAA,CAAAc,aAAA,CAACf,cAAc;IAACO,SAAS,EAAEA;EAAU,gBACnCN,KAAA,CAAAc,aAAA,CAAClB,MAAM,qBACLI,KAAA,CAAAc,aAAA,CAACN,gBAAgB;IAACU,KAAK,EAAEN,CAAC,CAAC,wBAAwB;EAAE,CAAE,CAAC,eAExDZ,KAAA,CAAAc,aAAA,CAACL,WAAW;IAACU,IAAI,EAAC,MAAM;IAACC,IAAI,EAAC;EAAO,GAClCR,CAAC,CAAC,8BAA8B,CACtB,CAAC,eAEdZ,KAAA,CAAAc,aAAA,CAACZ,QAAQ;IAACmB,QAAQ,eAAErB,KAAA,CAAAc,aAAA,CAACV,mBAAmB,MAAE;EAAE,gBAC1CJ,KAAA,CAAAc,aAAA,CAACT,wBAAwB,MAAE,CACnB,CACJ,CACM,CACV,CAAC;AAEb,CAAC;AAED,eAAeK,aAAa"}
|
|
@@ -35,7 +35,7 @@ const SessionList = ({
|
|
|
35
35
|
t
|
|
36
36
|
} = useTranslation(['profile']);
|
|
37
37
|
const currentSession = useMemo(() => sessions.find(session => session.current), [sessions]);
|
|
38
|
-
const otherSessions = useMemo(() => sessions.filter(session => !session.current).sort((a, b) =>
|
|
38
|
+
const otherSessions = useMemo(() => sessions.filter(session => !session.current).sort((a, b) => b.lastSeenAt - a.lastSeenAt), [sessions]);
|
|
39
39
|
const [commitDestroyAllOtherSessions, loadingDestroyAllOtherSessions] = useMutation(_SessionListDestroyAllOtherSessionsMutation !== void 0 ? _SessionListDestroyAllOtherSessionsMutation : (_SessionListDestroyAllOtherSessionsMutation = require("./__generated__/SessionListDestroyAllOtherSessionsMutation.graphql"), _SessionListDestroyAllOtherSessionsMutation.hash && _SessionListDestroyAllOtherSessionsMutation.hash !== "016b6b5e7ae228f7df552d97fa43bd40" && console.error("The definition of 'SessionListDestroyAllOtherSessionsMutation' appears to have changed. Run `relay-compiler` to update the generated files to receive the expected data."), _SessionListDestroyAllOtherSessionsMutation));
|
|
40
40
|
const destroyAllOtherSessions = useCallback(() => {
|
|
41
41
|
commitDestroyAllOtherSessions({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionList.js","names":["React","useCallback","useMemo","useFragment","useMutation","Button","message","styled","useTranslation","clr","SessionListItem","sessionsFragment","_SessionList_sessions","require","hash","console","error","Title","div","List","p","theme","listItemColorBorder","DestroyAllOtherSessionsButton","OtherSessions","SESSION_LIST_PADDING_VERTICAL","SessionList","sessionsKey","sessions","t","currentSession","find","session","current","otherSessions","filter","sort","a","b","
|
|
1
|
+
{"version":3,"file":"SessionList.js","names":["React","useCallback","useMemo","useFragment","useMutation","Button","message","styled","useTranslation","clr","SessionListItem","sessionsFragment","_SessionList_sessions","require","hash","console","error","Title","div","List","p","theme","listItemColorBorder","DestroyAllOtherSessionsButton","OtherSessions","SESSION_LIST_PADDING_VERTICAL","SessionList","sessionsKey","sessions","t","currentSession","find","session","current","otherSessions","filter","sort","a","b","lastSeenAt","commitDestroyAllOtherSessions","loadingDestroyAllOtherSessions","_SessionListDestroyAllOtherSessionsMutation","destroyAllOtherSessions","variables","updater","store","record","get","sessionRecords","getLinkedRecords","setLinkedRecords","item","getDataID","id","onError","onCompleted","success","createElement","Fragment","sessionKey","hideLastSeenAt","length","type","danger","size","wide","loading","onClick","map","key"],"sources":["../../../../src/lib/components/session/SessionList.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react';\nimport graphql from 'babel-plugin-relay/macro';\nimport { useFragment, useMutation } from 'react-relay/hooks';\nimport { Button, message } from '@os-design/core';\nimport styled from '@emotion/styled';\nimport { useTranslation } from 'react-i18next';\nimport { clr } from '@os-design/theming';\nimport { SessionList_sessions$key } from './__generated__/SessionList_sessions.graphql';\nimport SessionListItem from './SessionListItem';\nimport { SessionListDestroyAllOtherSessionsMutation } from './__generated__/SessionListDestroyAllOtherSessionsMutation.graphql';\n\nconst sessionsFragment = graphql`\n fragment SessionList_sessions on Query\n @refetchable(queryName: \"SessionListRefetchQuery\") {\n sessions {\n id\n current\n lastSeenAt\n ...SessionListItem_session\n }\n }\n`;\n\ninterface SessionListProps {\n sessionsKey: SessionList_sessions$key;\n}\n\nexport const Title = styled.div`\n font-weight: 500;\n margin: 1em 1em 0.5em;\n`;\n\nexport const List = styled.div`\n border-top: 1px solid ${(p) => clr(p.theme.listItemColorBorder)};\n border-bottom: 1px solid ${(p) => clr(p.theme.listItemColorBorder)};\n`;\n\nconst DestroyAllOtherSessionsButton = styled(Button)`\n & > span {\n flex: 1;\n text-align: left;\n }\n`;\n\nconst OtherSessions = styled.div`\n margin-top: 2em;\n`;\n\nexport const SESSION_LIST_PADDING_VERTICAL = 0.5;\n\nconst SessionList: React.FC<SessionListProps> = ({ sessionsKey }) => {\n const { sessions } = useFragment(sessionsFragment, sessionsKey);\n const { t } = useTranslation(['profile']);\n\n const currentSession = useMemo(\n () => sessions.find((session) => session.current),\n [sessions]\n );\n\n const otherSessions = useMemo(\n () =>\n sessions\n .filter((session) => !session.current)\n .sort((a, b) => b.lastSeenAt - a.lastSeenAt),\n [sessions]\n );\n\n const [commitDestroyAllOtherSessions, loadingDestroyAllOtherSessions] =\n useMutation<SessionListDestroyAllOtherSessionsMutation>(graphql`\n mutation SessionListDestroyAllOtherSessionsMutation {\n destroyAllOtherSessions {\n ok\n }\n }\n `);\n\n const destroyAllOtherSessions = useCallback(() => {\n commitDestroyAllOtherSessions({\n variables: {},\n updater: (store) => {\n const record = store.get('client:root');\n if (!record) return;\n\n const sessionRecords = record.getLinkedRecords('sessions');\n if (!sessionRecords) return;\n\n record.setLinkedRecords(\n sessionRecords.filter(\n (item) => item.getDataID() === currentSession?.id\n ),\n 'sessions'\n );\n },\n onError: (error) => {\n message.error(error.message);\n },\n onCompleted: () => {\n message.success(t('profile:sessions.destroyedAllOther'));\n },\n });\n }, [commitDestroyAllOtherSessions, currentSession?.id, t]);\n\n return (\n <>\n {currentSession && (\n <>\n <Title>{t('profile:sessions.current')}</Title>\n <List>\n <SessionListItem sessionKey={currentSession} hideLastSeenAt />\n </List>\n </>\n )}\n\n {otherSessions.length > 0 && (\n <>\n <DestroyAllOtherSessionsButton\n type='ghost'\n danger\n size='small'\n wide='always'\n loading={loadingDestroyAllOtherSessions}\n onClick={destroyAllOtherSessions}\n >\n {t('profile:sessions.destroyAllOther')}\n </DestroyAllOtherSessionsButton>\n\n <OtherSessions>\n <Title>\n {t('profile:sessions.other')} ({otherSessions.length})\n </Title>\n <List>\n {otherSessions.map((session) => (\n <SessionListItem key={session.id} sessionKey={session} />\n ))}\n </List>\n </OtherSessions>\n </>\n )}\n </>\n );\n};\n\nexport default SessionList;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionListItem_session.graphql.js","names":["node","hash"],"sources":["../../../../../src/lib/components/session/__generated__/SessionListItem_session.graphql.ts"],"sourcesContent":["/**\n * @generated SignedSource<<
|
|
1
|
+
{"version":3,"file":"SessionListItem_session.graphql.js","names":["node","hash"],"sources":["../../../../../src/lib/components/session/__generated__/SessionListItem_session.graphql.ts"],"sourcesContent":["/**\n * @generated SignedSource<<32f6e8f24d283a95f3c1c75b7911dc5a>>\n * @lightSyntaxTransform\n * @nogrep\n */\n\n/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n\nimport { Fragment, ReaderFragment } from 'relay-runtime';\nimport { FragmentRefs } from \"relay-runtime\";\nexport type SessionListItem_session$data = {\n readonly browserName: string | null;\n readonly browserVersion: string | null;\n readonly city: string | null;\n readonly country: string | null;\n readonly deviceBrand: string | null;\n readonly deviceManufacturer: string | null;\n readonly deviceModel: string | null;\n readonly deviceName: string | null;\n readonly deviceType: string | null;\n readonly id: string;\n readonly ip: string | null;\n readonly isApp: boolean;\n readonly lastSeenAt: any;\n readonly osName: string | null;\n readonly osVersion: string | null;\n readonly \" $fragmentType\": \"SessionListItem_session\";\n};\nexport type SessionListItem_session$key = {\n readonly \" $data\"?: SessionListItem_session$data;\n readonly \" $fragmentSpreads\": FragmentRefs<\"SessionListItem_session\">;\n};\n\nconst node: ReaderFragment = {\n \"argumentDefinitions\": [],\n \"kind\": \"Fragment\",\n \"metadata\": null,\n \"name\": \"SessionListItem_session\",\n \"selections\": [\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"id\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"isApp\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"browserName\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"browserVersion\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"osName\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"osVersion\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"deviceType\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"deviceName\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"deviceManufacturer\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"deviceBrand\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"deviceModel\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"ip\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"country\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"city\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"lastSeenAt\",\n \"storageKey\": null\n }\n ],\n \"type\": \"SessionPayload\",\n \"abstractKey\": null\n};\n\n(node as any).hash = \"c73c341c5f6e75f7bef7402186ce242b\";\n\nexport default node;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AA2BA,MAAMA,IAAoB,GAAG;EAC3B,qBAAqB,EAAE,EAAE;EACzB,MAAM,EAAE,UAAU;EAClB,UAAU,EAAE,IAAI;EAChB,MAAM,EAAE,yBAAyB;EACjC,YAAY,EAAE,CACZ;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,IAAI;IACZ,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,OAAO;IACf,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;IACrB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,gBAAgB;IACxB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,QAAQ;IAChB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,WAAW;IACnB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,YAAY;IACpB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,YAAY;IACpB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,oBAAoB;IAC5B,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;IACrB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;IACrB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,IAAI;IACZ,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,SAAS;IACjB,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,MAAM;IACd,YAAY,EAAE;EAChB,CAAC,EACD;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,YAAY;IACpB,YAAY,EAAE;EAChB,CAAC,CACF;EACD,MAAM,EAAE,gBAAgB;EACxB,aAAa,EAAE;AACjB,CAAC;AAEAA,IAAI,CAASC,IAAI,GAAG,kCAAkC;AAEvD,eAAeD,IAAI"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionList_sessions.graphql.js","names":["node","require","hash"],"sources":["../../../../../src/lib/components/session/__generated__/SessionList_sessions.graphql.ts"],"sourcesContent":["/**\n * @generated SignedSource<<
|
|
1
|
+
{"version":3,"file":"SessionList_sessions.graphql.js","names":["node","require","hash"],"sources":["../../../../../src/lib/components/session/__generated__/SessionList_sessions.graphql.ts"],"sourcesContent":["/**\n * @generated SignedSource<<a698059af5f9c23c9705fd96821de4d5>>\n * @lightSyntaxTransform\n * @nogrep\n */\n\n/* tslint:disable */\n/* eslint-disable */\n// @ts-nocheck\n\nimport { ReaderFragment, RefetchableFragment } from 'relay-runtime';\nimport { FragmentRefs } from \"relay-runtime\";\nexport type SessionList_sessions$data = {\n readonly sessions: ReadonlyArray<{\n readonly current: boolean;\n readonly id: string;\n readonly lastSeenAt: any;\n readonly \" $fragmentSpreads\": FragmentRefs<\"SessionListItem_session\">;\n }>;\n readonly \" $fragmentType\": \"SessionList_sessions\";\n};\nexport type SessionList_sessions$key = {\n readonly \" $data\"?: SessionList_sessions$data;\n readonly \" $fragmentSpreads\": FragmentRefs<\"SessionList_sessions\">;\n};\n\nconst node: ReaderFragment = {\n \"argumentDefinitions\": [],\n \"kind\": \"Fragment\",\n \"metadata\": {\n \"refetch\": {\n \"connection\": null,\n \"fragmentPathInResult\": [],\n \"operation\": require('./SessionListRefetchQuery.graphql')\n }\n },\n \"name\": \"SessionList_sessions\",\n \"selections\": [\n {\n \"alias\": null,\n \"args\": null,\n \"concreteType\": \"SessionPayload\",\n \"kind\": \"LinkedField\",\n \"name\": \"sessions\",\n \"plural\": true,\n \"selections\": [\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"id\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"current\",\n \"storageKey\": null\n },\n {\n \"alias\": null,\n \"args\": null,\n \"kind\": \"ScalarField\",\n \"name\": \"lastSeenAt\",\n \"storageKey\": null\n },\n {\n \"args\": null,\n \"kind\": \"FragmentSpread\",\n \"name\": \"SessionListItem_session\"\n }\n ],\n \"storageKey\": null\n }\n ],\n \"type\": \"Query\",\n \"abstractKey\": null\n};\n\n(node as any).hash = \"1b21c937c7ba795f09bfcb5ada7d2510\";\n\nexport default node;\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAkBA,MAAMA,IAAoB,GAAG;EAC3B,qBAAqB,EAAE,EAAE;EACzB,MAAM,EAAE,UAAU;EAClB,UAAU,EAAE;IACV,SAAS,EAAE;MACT,YAAY,EAAE,IAAI;MAClB,sBAAsB,EAAE,EAAE;MAC1B,WAAW,EAAEC,OAAO,CAAC,mCAAmC;IAC1D;EACF,CAAC;EACD,MAAM,EAAE,sBAAsB;EAC9B,YAAY,EAAE,CACZ;IACE,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;IACZ,cAAc,EAAE,gBAAgB;IAChC,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,UAAU;IAClB,QAAQ,EAAE,IAAI;IACd,YAAY,EAAE,CACZ;MACE,OAAO,EAAE,IAAI;MACb,MAAM,EAAE,IAAI;MACZ,MAAM,EAAE,aAAa;MACrB,MAAM,EAAE,IAAI;MACZ,YAAY,EAAE;IAChB,CAAC,EACD;MACE,OAAO,EAAE,IAAI;MACb,MAAM,EAAE,IAAI;MACZ,MAAM,EAAE,aAAa;MACrB,MAAM,EAAE,SAAS;MACjB,YAAY,EAAE;IAChB,CAAC,EACD;MACE,OAAO,EAAE,IAAI;MACb,MAAM,EAAE,IAAI;MACZ,MAAM,EAAE,aAAa;MACrB,MAAM,EAAE,YAAY;MACpB,YAAY,EAAE;IAChB,CAAC,EACD;MACE,MAAM,EAAE,IAAI;MACZ,MAAM,EAAE,gBAAgB;MACxB,MAAM,EAAE;IACV,CAAC,CACF;IACD,YAAY,EAAE;EAChB,CAAC,CACF;EACD,MAAM,EAAE,OAAO;EACf,aAAa,EAAE;AACjB,CAAC;AAEAD,IAAI,CAASE,IAAI,GAAG,kCAAkC;AAEvD,eAAeF,IAAI"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatDate.js","names":["formatDate","
|
|
1
|
+
{"version":3,"file":"formatDate.js","names":["formatDate","timestamp","t","lng","date","Date","day","getDate","month","returnObjects","getMonth","year","getFullYear","isPrevYear"],"sources":["../../../../src/lib/components/session/formatDate.ts"],"sourcesContent":["import { TFunction } from 'i18next';\n\nconst formatDate = (timestamp: number, t: TFunction, lng: string): string => {\n const date = new Date(timestamp);\n\n const day = date.getDate();\n const month = t('profile:sessions.monthAbbreviations', {\n returnObjects: true,\n })[date.getMonth()];\n const year = date.getFullYear();\n const isPrevYear = year < new Date().getFullYear();\n\n if (lng === 'ru') return `${day} ${month}${isPrevYear ? ` ${year}` : ''}`;\n return `${month} ${day}${isPrevYear ? `, ${year}` : ''}`;\n};\n\nexport default formatDate;\n"],"mappings":"AAEA,MAAMA,UAAU,GAAGA,CAACC,SAAiB,EAAEC,CAAY,EAAEC,GAAW,KAAa;EAC3E,MAAMC,IAAI,GAAG,IAAIC,IAAI,CAACJ,SAAS,CAAC;EAEhC,MAAMK,GAAG,GAAGF,IAAI,CAACG,OAAO,CAAC,CAAC;EAC1B,MAAMC,KAAK,GAAGN,CAAC,CAAC,qCAAqC,EAAE;IACrDO,aAAa,EAAE;EACjB,CAAC,CAAC,CAACL,IAAI,CAACM,QAAQ,CAAC,CAAC,CAAC;EACnB,MAAMC,IAAI,GAAGP,IAAI,CAACQ,WAAW,CAAC,CAAC;EAC/B,MAAMC,UAAU,GAAGF,IAAI,GAAG,IAAIN,IAAI,CAAC,CAAC,CAACO,WAAW,CAAC,CAAC;EAElD,IAAIT,GAAG,KAAK,IAAI,EAAE,OAAQ,GAAEG,GAAI,IAAGE,KAAM,GAAEK,UAAU,GAAI,IAAGF,IAAK,EAAC,GAAG,EAAG,EAAC;EACzE,OAAQ,GAAEH,KAAM,IAAGF,GAAI,GAAEO,UAAU,GAAI,KAAIF,IAAK,EAAC,GAAG,EAAG,EAAC;AAC1D,CAAC;AAED,eAAeX,UAAU"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLastSeen.js","names":["getLastSeen","lastSeenAt","date","Date","milliseconds","now","getTime","seconds","Math","floor","minutes","hours"],"sources":["../../../../src/lib/components/session/getLastSeen.ts"],"sourcesContent":["const getLastSeen = (\n lastSeenAt:
|
|
1
|
+
{"version":3,"file":"getLastSeen.js","names":["getLastSeen","lastSeenAt","date","Date","milliseconds","now","getTime","seconds","Math","floor","minutes","hours"],"sources":["../../../../src/lib/components/session/getLastSeen.ts"],"sourcesContent":["const getLastSeen = (\n lastSeenAt: number\n): [number, 'hours' | 'minutes' | 'seconds'] | null => {\n const date = new Date(lastSeenAt);\n const milliseconds = Date.now() - date.getTime();\n if (milliseconds <= 1000) return [1, 'seconds'];\n\n const seconds = Math.floor(milliseconds / 1000);\n if (seconds < 60) return [seconds, 'seconds'];\n\n const minutes = Math.floor(seconds / 60);\n if (minutes < 60) return [minutes, 'minutes'];\n\n const hours = Math.floor(minutes / 60);\n if (hours < 24) return [hours, 'hours'];\n\n return null;\n};\n\nexport default getLastSeen;\n"],"mappings":"AAAA,MAAMA,WAAW,GACfC,UAAkB,IACmC;EACrD,MAAMC,IAAI,GAAG,IAAIC,IAAI,CAACF,UAAU,CAAC;EACjC,MAAMG,YAAY,GAAGD,IAAI,CAACE,GAAG,CAAC,CAAC,GAAGH,IAAI,CAACI,OAAO,CAAC,CAAC;EAChD,IAAIF,YAAY,IAAI,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC;EAE/C,MAAMG,OAAO,GAAGC,IAAI,CAACC,KAAK,CAACL,YAAY,GAAG,IAAI,CAAC;EAC/C,IAAIG,OAAO,GAAG,EAAE,EAAE,OAAO,CAACA,OAAO,EAAE,SAAS,CAAC;EAE7C,MAAMG,OAAO,GAAGF,IAAI,CAACC,KAAK,CAACF,OAAO,GAAG,EAAE,CAAC;EACxC,IAAIG,OAAO,GAAG,EAAE,EAAE,OAAO,CAACA,OAAO,EAAE,SAAS,CAAC;EAE7C,MAAMC,KAAK,GAAGH,IAAI,CAACC,KAAK,CAACC,OAAO,GAAG,EAAE,CAAC;EACtC,IAAIC,KAAK,GAAG,EAAE,EAAE,OAAO,CAACA,KAAK,EAAE,OAAO,CAAC;EAEvC,OAAO,IAAI;AACb,CAAC;AAED,eAAeX,WAAW"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionDrawer.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/session/SessionDrawer.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SessionDrawer.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/session/SessionDrawer.tsx"],"names":[],"mappings":"AACA,OAAO,EAGL,WAAW,EAGZ,MAAM,iBAAiB,CAAC;AAGzB,OAAO,KAAyB,MAAM,OAAO,CAAC;AAgB9C,QAAA,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAqBxC,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionList.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/session/SessionList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAOpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAgBxF,UAAU,gBAAgB;IACxB,WAAW,EAAE,wBAAwB,CAAC;CACvC;AAED,eAAO,MAAM,KAAK;;;qFAGjB,CAAC;AAEF,eAAO,MAAM,IAAI;;;qFAGhB,CAAC;AAaF,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAEjD,QAAA,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,
|
|
1
|
+
{"version":3,"file":"SessionList.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/session/SessionList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+B,MAAM,OAAO,CAAC;AAOpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,8CAA8C,CAAC;AAgBxF,UAAU,gBAAgB;IACxB,WAAW,EAAE,wBAAwB,CAAC;CACvC;AAED,eAAO,MAAM,KAAK;;;qFAGjB,CAAC;AAEF,eAAO,MAAM,IAAI;;;qFAGhB,CAAC;AAaF,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAEjD,QAAA,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA0F3C,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
package/dist/types/src/lib/components/session/__generated__/SessionListItem_session.graphql.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export type SessionListItem_session$data = {
|
|
|
13
13
|
readonly id: string;
|
|
14
14
|
readonly ip: string | null;
|
|
15
15
|
readonly isApp: boolean;
|
|
16
|
-
readonly lastSeenAt:
|
|
16
|
+
readonly lastSeenAt: any;
|
|
17
17
|
readonly osName: string | null;
|
|
18
18
|
readonly osVersion: string | null;
|
|
19
19
|
readonly " $fragmentType": "SessionListItem_session";
|
package/dist/types/src/lib/components/session/__generated__/SessionListItem_session.graphql.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionListItem_session.graphql.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/components/session/__generated__/SessionListItem_session.graphql.ts"],"names":[],"mappings":"AAUA,OAAO,EAAY,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,MAAM,MAAM,4BAA4B,GAAG;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"SessionListItem_session.graphql.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/components/session/__generated__/SessionListItem_session.graphql.ts"],"names":[],"mappings":"AAUA,OAAO,EAAY,cAAc,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,MAAM,MAAM,4BAA4B,GAAG;IACzC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,gBAAgB,EAAE,yBAAyB,CAAC;CACtD,CAAC;AACF,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,4BAA4B,CAAC;IACjD,QAAQ,CAAC,mBAAmB,EAAE,YAAY,CAAC,yBAAyB,CAAC,CAAC;CACvE,CAAC;AAEF,QAAA,MAAM,IAAI,EAAE,cAkHX,CAAC;AAIF,eAAe,IAAI,CAAC"}
|
package/dist/types/src/lib/components/session/__generated__/SessionList_sessions.graphql.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ export type SessionList_sessions$data = {
|
|
|
4
4
|
readonly sessions: ReadonlyArray<{
|
|
5
5
|
readonly current: boolean;
|
|
6
6
|
readonly id: string;
|
|
7
|
-
readonly lastSeenAt:
|
|
7
|
+
readonly lastSeenAt: any;
|
|
8
8
|
readonly " $fragmentSpreads": FragmentRefs<"SessionListItem_session">;
|
|
9
9
|
}>;
|
|
10
10
|
readonly " $fragmentType": "SessionList_sessions";
|
package/dist/types/src/lib/components/session/__generated__/SessionList_sessions.graphql.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionList_sessions.graphql.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/components/session/__generated__/SessionList_sessions.graphql.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,cAAc,EAAuB,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;QAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;QAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"SessionList_sessions.graphql.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/components/session/__generated__/SessionList_sessions.graphql.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,cAAc,EAAuB,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;QAC/B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;QAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC;QACzB,QAAQ,CAAC,mBAAmB,EAAE,YAAY,CAAC,yBAAyB,CAAC,CAAC;KACvE,CAAC,CAAC;IACH,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;CACnD,CAAC;AACF,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IAC9C,QAAQ,CAAC,mBAAmB,EAAE,YAAY,CAAC,sBAAsB,CAAC,CAAC;CACpE,CAAC;AAEF,QAAA,MAAM,IAAI,EAAE,cAoDX,CAAC;AAIF,eAAe,IAAI,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { TFunction } from 'i18next';
|
|
2
|
-
declare const formatDate: (
|
|
2
|
+
declare const formatDate: (timestamp: number, t: TFunction, lng: string) => string;
|
|
3
3
|
export default formatDate;
|
|
4
4
|
//# sourceMappingURL=formatDate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatDate.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/session/formatDate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,QAAA,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"formatDate.d.ts","sourceRoot":"","sources":["../../../../../../src/lib/components/session/formatDate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,QAAA,MAAM,UAAU,cAAe,MAAM,KAAK,SAAS,OAAO,MAAM,KAAG,MAYlE,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
declare const getLastSeen: (lastSeenAt:
|
|
1
|
+
declare const getLastSeen: (lastSeenAt: number) => [number, 'hours' | 'minutes' | 'seconds'] | null;
|
|
2
2
|
export default getLastSeen;
|
|
3
3
|
//# sourceMappingURL=getLastSeen.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,18 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@os-team/profile",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.7",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"repository": "git@gitlab.com:os-team/libs/profile.git",
|
|
6
6
|
"main": "dist/cjs/index.js",
|
|
7
7
|
"module": "dist/esm/index.js",
|
|
8
8
|
"types": "dist/types/index.d.ts",
|
|
9
|
-
"exports": {
|
|
10
|
-
".": {
|
|
11
|
-
"require": "./dist/cjs/index.js",
|
|
12
|
-
"default": "./dist/esm/index.js"
|
|
13
|
-
},
|
|
14
|
-
"./package.json": "./package.json"
|
|
15
|
-
},
|
|
16
9
|
"files": [
|
|
17
10
|
"dist"
|
|
18
11
|
],
|