@northern.tech/store 0.41.3 → 0.42.0
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/actions.d.cts +9 -10
- package/dist/actions.d.ts +9 -10
- package/dist/api/general-api.cjs +1 -1
- package/dist/api/general-api.cjs.map +1 -1
- package/dist/api/general-api.d.cts +0 -1
- package/dist/api/general-api.d.ts +0 -1
- package/dist/api/general-api.js +1 -1
- package/dist/api/users-api.cjs +1 -1
- package/dist/api/users-api.d.cts +1 -6
- package/dist/api/users-api.d.ts +1 -6
- package/dist/appSlice/constants.cjs +0 -5
- package/dist/appSlice/constants.cjs.map +1 -1
- package/dist/appSlice/constants.d.cts +1 -1
- package/dist/appSlice/constants.d.ts +1 -1
- package/dist/appSlice/constants.js +0 -5
- package/dist/appSlice/constants.js.map +1 -1
- package/dist/appSlice/index.cjs.map +1 -1
- package/dist/appSlice/index.d.cts +1 -1
- package/dist/appSlice/index.d.ts +1 -1
- package/dist/appSlice/index.js +1 -1
- package/dist/appSlice/mocks.d.cts +1 -2
- package/dist/appSlice/mocks.d.ts +1 -2
- package/dist/appSlice/selectors.cjs.map +1 -1
- package/dist/appSlice/selectors.d.cts +9 -10
- package/dist/appSlice/selectors.d.ts +9 -10
- package/dist/appSlice/thunks.d.cts +2 -3
- package/dist/appSlice/thunks.d.ts +2 -3
- package/dist/auth.cjs +1 -1
- package/dist/auth.d.cts +3 -10
- package/dist/auth.d.ts +3 -10
- package/dist/auth.js +1 -1
- package/dist/commonConstants.d.cts +1 -1
- package/dist/commonConstants.d.ts +1 -1
- package/dist/commonConstants.js +1 -1
- package/dist/commonSelectors.cjs +4 -3
- package/dist/commonSelectors.cjs.map +1 -1
- package/dist/commonSelectors.d.cts +20 -21
- package/dist/commonSelectors.d.ts +20 -21
- package/dist/commonSelectors.js +4 -3
- package/dist/commonSelectors.js.map +1 -1
- package/dist/{constants-Sn4gnNA3.d.ts → constants-B3Jdkn2b.d.cts} +2 -5
- package/dist/{constants-Sn4gnNA3.d.cts → constants-B3Jdkn2b.d.ts} +2 -5
- package/dist/{constants-CzjK2gV-.d.ts → constants-B_H4squx.d.ts} +4 -4
- package/dist/{constants-D9o0Cnk_.d.ts → constants-C6TIYaY4.d.cts} +1 -2
- package/dist/{constants-D9o0Cnk_.d.cts → constants-C6TIYaY4.d.ts} +1 -2
- package/dist/{constants-6kYRTdox.d.ts → constants-CEwun8TL.d.cts} +3 -2
- package/dist/{constants-6kYRTdox.d.cts → constants-CEwun8TL.d.ts} +3 -2
- package/dist/constants-C_SC_VKE.cjs.map +1 -1
- package/dist/{constants-xpheFFkA.js → constants-CerzXHnQ.js} +3 -3
- package/dist/{constants-xpheFFkA.js.map → constants-CerzXHnQ.js.map} +1 -1
- package/dist/{constants-DAi2zOZN.d.cts → constants-Rl3FJzFf.d.cts} +4 -4
- package/dist/{constants-B_7FCJQX.d.ts → constants-nKSWZ8oD.d.cts} +3 -8
- package/dist/{constants-B_7FCJQX.d.cts → constants-nKSWZ8oD.d.ts} +3 -8
- package/dist/constants.cjs +2 -0
- package/dist/constants.d.cts +6 -6
- package/dist/constants.d.ts +6 -6
- package/dist/constants.js +3 -3
- package/dist/deploymentsSlice/constants.d.cts +1 -1
- package/dist/deploymentsSlice/constants.d.ts +1 -1
- package/dist/deploymentsSlice/constants.js +1 -1
- package/dist/deploymentsSlice/index.cjs.map +1 -1
- package/dist/deploymentsSlice/index.d.cts +1 -1
- package/dist/deploymentsSlice/index.d.ts +1 -1
- package/dist/deploymentsSlice/index.js +1 -1
- package/dist/deploymentsSlice/mocks.d.cts +1 -2
- package/dist/deploymentsSlice/mocks.d.ts +1 -2
- package/dist/deploymentsSlice/selectors.cjs.map +1 -1
- package/dist/deploymentsSlice/selectors.d.cts +9 -10
- package/dist/deploymentsSlice/selectors.d.ts +9 -10
- package/dist/deploymentsSlice/selectors.js +1 -1
- package/dist/deploymentsSlice/thunks.d.cts +7 -13
- package/dist/deploymentsSlice/thunks.d.ts +7 -13
- package/dist/devicesSlice/constants.d.cts +1 -1
- package/dist/devicesSlice/constants.d.ts +1 -1
- package/dist/devicesSlice/constants.js +1 -1
- package/dist/devicesSlice/index.cjs +1 -1
- package/dist/devicesSlice/index.cjs.map +1 -1
- package/dist/devicesSlice/index.d.cts +2 -2
- package/dist/devicesSlice/index.d.ts +2 -2
- package/dist/devicesSlice/index.js +2 -2
- package/dist/devicesSlice/index.js.map +1 -1
- package/dist/devicesSlice/mocks.js +1 -1
- package/dist/devicesSlice/selectors.cjs.map +1 -1
- package/dist/devicesSlice/selectors.d.cts +9 -10
- package/dist/devicesSlice/selectors.d.ts +9 -10
- package/dist/devicesSlice/selectors.js +1 -1
- package/dist/devicesSlice/thunks.cjs +1 -2
- package/dist/devicesSlice/thunks.d.cts +11 -23
- package/dist/devicesSlice/thunks.d.ts +11 -23
- package/dist/devicesSlice/thunks.js +2 -2
- package/dist/{index-Bb4yvvgG.d.ts → index-B8td4-rY.d.ts} +1 -2
- package/dist/{index-C5oQrJGU.d.ts → index-BAGyeC-q.d.ts} +2 -3
- package/dist/{index-CgPgKMve.d.cts → index-BgF6rhXn.d.cts} +3 -4
- package/dist/{index-CnH51JfB.d.ts → index-Bs0c1-WY.d.ts} +4 -9
- package/dist/{index-BtGhTFBc.d.ts → index-Bvyf8OO6.d.ts} +9 -13
- package/dist/{index-m1c0qk2s.d.ts → index-C8uiyxnb.d.ts} +2 -3
- package/dist/{index-CSOj22xK.d.cts → index-C_LGDJN2.d.cts} +2 -3
- package/dist/{index-H9zg_3UV.d.ts → index-ChKTa1aL.d.ts} +2 -3
- package/dist/{index-vXsWdis1.d.cts → index-CiQ95u1W.d.cts} +9 -13
- package/dist/{index-DBUt8xVc.d.ts → index-CoObjWL4.d.cts} +1 -2
- package/dist/{index-DBUt8xVc.d.cts → index-CoObjWL4.d.ts} +1 -2
- package/dist/{index-BCErsO5h.d.ts → index-CpfhQHfg.d.ts} +3 -4
- package/dist/{index-BQCnJ5gh.d.cts → index-Ctj2r57a.d.cts} +2 -3
- package/dist/{index-Dn1SqQYh.d.cts → index-DeOpb2oK.d.cts} +4 -9
- package/dist/{index-VEayiYkv.d.cts → index-DiAjzARZ.d.cts} +2 -3
- package/dist/{index-EPmsL6Lb.d.cts → index-mvxjivTJ.d.cts} +1 -2
- package/dist/liststatehook.cjs.map +1 -1
- package/dist/liststatehook.d.cts +0 -1
- package/dist/liststatehook.d.ts +0 -1
- package/dist/locationutils.cjs.map +1 -1
- package/dist/locationutils.d.cts +14 -67
- package/dist/locationutils.d.ts +14 -67
- package/dist/locationutils.js +1 -1
- package/dist/monitorSlice/constants.d.cts +1 -1
- package/dist/monitorSlice/constants.d.ts +1 -1
- package/dist/monitorSlice/index.cjs.map +1 -1
- package/dist/monitorSlice/index.d.cts +1 -1
- package/dist/monitorSlice/index.d.ts +1 -1
- package/dist/monitorSlice/index.js +1 -1
- package/dist/monitorSlice/mocks.d.cts +1 -2
- package/dist/monitorSlice/mocks.d.ts +1 -2
- package/dist/monitorSlice/mocks.js +1 -1
- package/dist/monitorSlice/selectors.d.cts +1 -2
- package/dist/monitorSlice/selectors.d.ts +1 -2
- package/dist/monitorSlice/thunks.d.cts +4 -5
- package/dist/monitorSlice/thunks.d.ts +4 -5
- package/dist/monitorSlice/thunks.js +1 -1
- package/dist/onboardingSlice/index.cjs.map +1 -1
- package/dist/onboardingSlice/index.d.cts +1 -1
- package/dist/onboardingSlice/index.d.ts +1 -1
- package/dist/onboardingSlice/mocks.d.cts +1 -2
- package/dist/onboardingSlice/mocks.d.ts +1 -2
- package/dist/onboardingSlice/selectors.d.cts +2 -3
- package/dist/onboardingSlice/selectors.d.ts +2 -3
- package/dist/onboardingSlice/thunks.d.cts +4 -4
- package/dist/onboardingSlice/thunks.d.ts +4 -4
- package/dist/organizationSlice/constants.js +1 -1
- package/dist/organizationSlice/index.cjs.map +1 -1
- package/dist/organizationSlice/index.d.cts +1 -1
- package/dist/organizationSlice/index.d.ts +1 -1
- package/dist/organizationSlice/index.js +1 -1
- package/dist/organizationSlice/mocks.d.cts +3 -3
- package/dist/organizationSlice/mocks.d.ts +3 -3
- package/dist/organizationSlice/mocks.js +1 -1
- package/dist/organizationSlice/selectors.cjs.map +1 -1
- package/dist/organizationSlice/selectors.d.cts +11 -16
- package/dist/organizationSlice/selectors.d.ts +11 -16
- package/dist/organizationSlice/selectors.js +1 -1
- package/dist/organizationSlice/thunks.d.cts +6 -7
- package/dist/organizationSlice/thunks.d.ts +6 -7
- package/dist/organizationSlice/types.d.cts +1 -1
- package/dist/organizationSlice/types.d.ts +1 -1
- package/dist/releasesSlice/constants.cjs +2 -0
- package/dist/releasesSlice/constants.cjs.map +1 -1
- package/dist/releasesSlice/constants.d.cts +2 -2
- package/dist/releasesSlice/constants.d.ts +2 -2
- package/dist/releasesSlice/constants.js +2 -1
- package/dist/releasesSlice/constants.js.map +1 -1
- package/dist/releasesSlice/index.cjs.map +1 -1
- package/dist/releasesSlice/index.d.cts +1 -1
- package/dist/releasesSlice/index.d.ts +1 -1
- package/dist/releasesSlice/index.js +1 -1
- package/dist/releasesSlice/mocks.js +1 -1
- package/dist/releasesSlice/selectors.cjs.map +1 -1
- package/dist/releasesSlice/selectors.d.cts +9 -10
- package/dist/releasesSlice/selectors.d.ts +9 -10
- package/dist/releasesSlice/thunks.cjs +1 -1
- package/dist/releasesSlice/thunks.cjs.map +1 -1
- package/dist/releasesSlice/thunks.d.cts +4 -5
- package/dist/releasesSlice/thunks.d.ts +4 -5
- package/dist/releasesSlice/thunks.js +1 -1
- package/dist/{rolldown-runtime-D6vf50IK.cjs → rolldown-runtime-VH7oDXx4.cjs} +1 -1
- package/dist/sockethook.cjs +1 -2
- package/dist/sockethook.cjs.map +1 -1
- package/dist/sockethook.d.cts +1 -8
- package/dist/sockethook.d.ts +1 -8
- package/dist/sockethook.js +1 -2
- package/dist/sockethook.js.map +1 -1
- package/dist/{store-CkgokFlk.d.ts → store-CPptM5Ts.d.ts} +27 -48
- package/dist/{store-CGP5pCH8.d.cts → store-CUUm1GTI.d.cts} +27 -48
- package/dist/store.cjs.map +1 -1
- package/dist/store.d.cts +1 -1
- package/dist/store.d.ts +1 -1
- package/dist/store.js +1 -1
- package/dist/storehooks.cjs +30 -20
- package/dist/storehooks.cjs.map +1 -1
- package/dist/storehooks.d.cts +13 -4
- package/dist/storehooks.d.ts +13 -4
- package/dist/storehooks.js +31 -22
- package/dist/storehooks.js.map +1 -1
- package/dist/thunks.cjs +16 -107
- package/dist/thunks.cjs.map +1 -1
- package/dist/thunks.d.cts +2 -2
- package/dist/thunks.d.ts +2 -2
- package/dist/thunks.js +16 -106
- package/dist/thunks.js.map +1 -1
- package/dist/{types-uHmaedGU.d.ts → types-B3qGQoMx.d.ts} +3 -4
- package/dist/{types-yQ0ypHMZ.d.cts → types-B80ckxiy.d.cts} +3 -4
- package/dist/useDeploymentDevice.cjs +1 -1
- package/dist/useDeploymentDevice.cjs.map +1 -1
- package/dist/usersSlice/constants.d.cts +1 -1
- package/dist/usersSlice/constants.d.ts +1 -1
- package/dist/usersSlice/constants.js +1 -1
- package/dist/usersSlice/index.cjs.map +1 -1
- package/dist/usersSlice/index.d.cts +1 -1
- package/dist/usersSlice/index.d.ts +1 -1
- package/dist/usersSlice/index.js +1 -1
- package/dist/usersSlice/mocks.d.cts +2 -3
- package/dist/usersSlice/mocks.d.ts +2 -3
- package/dist/usersSlice/mocks.js +1 -1
- package/dist/usersSlice/selectors.cjs.map +1 -1
- package/dist/usersSlice/selectors.d.cts +10 -11
- package/dist/usersSlice/selectors.d.ts +10 -11
- package/dist/usersSlice/selectors.js +1 -1
- package/dist/usersSlice/thunks.d.cts +5 -6
- package/dist/usersSlice/thunks.d.ts +5 -6
- package/dist/utils.cjs +2 -2
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.d.cts +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.js +3 -3
- package/dist/utils.js.map +1 -1
- package/package.json +9 -9
package/dist/sockethook.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sockethook.cjs","names":["Cookies","Packr","MessageProtocols","MessageTypes","TIMEOUTS","apiUrl"],"sources":["../src/sockethook.ts"],"sourcesContent":["// Copyright 2022 Northern.tech AS\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport { useCallback, useEffect, useRef, useState } from 'react';\n\nimport { blobToString, byteArrayToString } from '@northern.tech/utils/helpers';\nimport { Packr } from 'msgpackr';\nimport Cookies from 'universal-cookie';\n\nimport { DEVICE_MESSAGE_PROTOCOLS as MessageProtocols, DEVICE_MESSAGE_TYPES as MessageTypes, TIMEOUTS, apiUrl } from './constants';\n\nconst cookies = new Cookies();\n\n// plain maps + omitted undefined fields keep the wire format compatible with the deviceconnect backend\nconst MessagePack = new Packr({ skipValues: [undefined], useRecords: false });\n\ntype UseSessionProps = {\n onClose: (event: CloseEvent) => void;\n onHealthCheckFailed: () => void;\n onMessageReceived: (body: Uint8Array) => void;\n onNotify: (message: string) => void;\n onOpen: (isOpen: boolean) => void;\n token: string;\n};\n\ntype MessageProps = {\n body?: Uint8Array;\n props: Record<string, string | number>;\n typ: string;\n};\n\ntype SessionWebSocket = WebSocket & { sessionId?: string };\n\ntype UseSessionReturn = [\n connect: (deviceId: string) => void,\n sendMessage: (message: MessageProps) => void,\n close: () => void,\n readyState: number,\n sessionId: string | undefined\n];\n\nexport const useSession = ({ onClose, onHealthCheckFailed, onMessageReceived, onNotify, onOpen, token }: UseSessionProps): UseSessionReturn => {\n const [sessionId, setSessionId] = useState<string | undefined>();\n const healthcheckTimeout = useRef<ReturnType<typeof setTimeout> | undefined>(undefined);\n const socketRef = useRef<SessionWebSocket | undefined>(undefined);\n const sendMessage = useCallback(({ typ, body, props }: MessageProps): void => {\n if (!socketRef.current) {\n return;\n }\n const proto_header = { proto: MessageProtocols.Shell, typ, sid: socketRef.current.sessionId, props };\n const encodedData = MessagePack.pack({ hdr: proto_header, body });\n socketRef.current.send(encodedData);\n }, []);\n\n const close = useCallback((): void => {\n if (!socketRef.current || socketRef.current?.readyState !== WebSocket.OPEN) {\n return;\n }\n sendMessage({ typ: MessageTypes.Stop, props: {} });\n socketRef.current.close();\n setSessionId(undefined);\n }, [sendMessage]);\n\n const healthcheckFailed = useCallback((): void => {\n onHealthCheckFailed();\n close();\n }, [close, onHealthCheckFailed]);\n\n const onSocketMessage = useCallback(\n (event: MessageEvent): Promise<void> =>\n blobToString(event.data).then((data: unknown) => {\n const {\n hdr: { props = {} as Record<string, string | number>, proto, sid, typ },\n body\n } = MessagePack.unpack(new Uint8Array(data as ArrayBuffer)) as {\n body: Uint8Array;\n hdr: { props: Record<string, string | number>; proto: number; sid: string; typ: string };\n };\n if (proto !== MessageProtocols.Shell) {\n return;\n }\n switch (typ) {\n case MessageTypes.New: {\n if (props.status == WebSocket.CLOSING) {\n onNotify(`Error: ${byteArrayToString(body as unknown as Buffer)}`);\n setSessionId(undefined);\n return close();\n } else {\n clearTimeout(healthcheckTimeout.current);\n healthcheckTimeout.current = setTimeout(healthcheckFailed, 65 * TIMEOUTS.oneSecond);\n if (socketRef.current) {\n socketRef.current.sessionId = sid;\n }\n return setSessionId(sid);\n }\n }\n case MessageTypes.Shell:\n return onMessageReceived(body);\n case MessageTypes.Stop:\n return close();\n case MessageTypes.Ping: {\n if (healthcheckTimeout.current) {\n clearTimeout(healthcheckTimeout.current);\n }\n sendMessage({ typ: MessageTypes.Pong, props: {} });\n const timeout = parseInt(props.timeout as string);\n if (timeout > 0) {\n healthcheckTimeout.current = setTimeout(healthcheckFailed, timeout * TIMEOUTS.oneSecond);\n }\n return;\n }\n default:\n break;\n }\n }),\n [close, healthcheckFailed, onMessageReceived, onNotify, sendMessage]\n );\n\n const onSocketError = useCallback(\n (error: Event): void => {\n onNotify(`WebSocket error: ${(error as ErrorEvent).message || 'Unknown error'}`);\n close();\n clearTimeout(healthcheckTimeout.current);\n },\n [close, onNotify]\n );\n\n const onSocketOpen = useCallback((): void => {\n sendMessage({ typ: MessageTypes.New, props: {} });\n onOpen(true);\n }, [onOpen, sendMessage]);\n\n const onSocketClose = useCallback(\n (e: CloseEvent): void => {\n console.log('closing');\n onClose(e);\n close();\n },\n [close, onClose]\n );\n\n const connect = useCallback(\n (deviceId: string): void => {\n const uri = `wss://${window.location.host}${apiUrl.v1}/deviceconnect/devices/${deviceId}/connect`;\n setSessionId(undefined);\n cookies.set('JWT', token, { path: '/', secure: true, sameSite: 'strict', maxAge: 5 });\n try {\n socketRef.current = new WebSocket(uri);\n } catch (error) {\n console.log(error);\n }\n },\n [token]\n );\n\n useEffect(() => {\n const currentSocket = socketRef.current;\n if (!currentSocket) {\n return;\n }\n\n currentSocket.addEventListener('close', onSocketClose);\n currentSocket.addEventListener('error', onSocketError);\n currentSocket.addEventListener('message', onSocketMessage);\n currentSocket.addEventListener('open', onSocketOpen);\n\n return () => {\n currentSocket.removeEventListener('close', onSocketClose);\n currentSocket.removeEventListener('error', onSocketError);\n currentSocket.removeEventListener('message', onSocketMessage);\n currentSocket.removeEventListener('open', onSocketOpen);\n };\n // eslint-disable-next-line react-hooks/refs\n }, [onSocketClose, onSocketError, onSocketMessage, onSocketOpen, socketRef.current?.readyState]);\n\n // eslint-disable-next-line react-hooks/refs\n return [connect, sendMessage, close, socketRef.current?.readyState ?? WebSocket.CLOSED, sessionId];\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sockethook.cjs","names":["Cookies","Packr","useState","useRef","useCallback","MessageProtocols","MessageTypes","blobToString","byteArrayToString","TIMEOUTS","apiUrl"],"sources":["../src/sockethook.ts"],"sourcesContent":["// Copyright 2022 Northern.tech AS\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport { useCallback, useEffect, useRef, useState } from 'react';\n\nimport { blobToString, byteArrayToString } from '@northern.tech/utils/helpers';\nimport { Packr } from 'msgpackr';\nimport Cookies from 'universal-cookie';\n\nimport { DEVICE_MESSAGE_PROTOCOLS as MessageProtocols, DEVICE_MESSAGE_TYPES as MessageTypes, TIMEOUTS, apiUrl } from './constants';\n\nconst cookies = new Cookies();\n\n// plain maps + omitted undefined fields keep the wire format compatible with the deviceconnect backend\nconst MessagePack = new Packr({ skipValues: [undefined], useRecords: false });\n\ntype UseSessionProps = {\n onClose: (event: CloseEvent) => void;\n onHealthCheckFailed: () => void;\n onMessageReceived: (body: Uint8Array) => void;\n onNotify: (message: string) => void;\n onOpen: (isOpen: boolean) => void;\n token: string;\n};\n\ntype MessageProps = {\n body?: Uint8Array;\n props: Record<string, string | number>;\n typ: string;\n};\n\ntype SessionWebSocket = WebSocket & { sessionId?: string };\n\ntype UseSessionReturn = [\n connect: (deviceId: string) => void,\n sendMessage: (message: MessageProps) => void,\n close: () => void,\n readyState: number,\n sessionId: string | undefined\n];\n\nexport const useSession = ({ onClose, onHealthCheckFailed, onMessageReceived, onNotify, onOpen, token }: UseSessionProps): UseSessionReturn => {\n const [sessionId, setSessionId] = useState<string | undefined>();\n const healthcheckTimeout = useRef<ReturnType<typeof setTimeout> | undefined>(undefined);\n const socketRef = useRef<SessionWebSocket | undefined>(undefined);\n const sendMessage = useCallback(({ typ, body, props }: MessageProps): void => {\n if (!socketRef.current) {\n return;\n }\n const proto_header = { proto: MessageProtocols.Shell, typ, sid: socketRef.current.sessionId, props };\n const encodedData = MessagePack.pack({ hdr: proto_header, body });\n socketRef.current.send(encodedData);\n }, []);\n\n const close = useCallback((): void => {\n if (!socketRef.current || socketRef.current?.readyState !== WebSocket.OPEN) {\n return;\n }\n sendMessage({ typ: MessageTypes.Stop, props: {} });\n socketRef.current.close();\n setSessionId(undefined);\n }, [sendMessage]);\n\n const healthcheckFailed = useCallback((): void => {\n onHealthCheckFailed();\n close();\n }, [close, onHealthCheckFailed]);\n\n const onSocketMessage = useCallback(\n (event: MessageEvent): Promise<void> =>\n blobToString(event.data).then((data: unknown) => {\n const {\n hdr: { props = {} as Record<string, string | number>, proto, sid, typ },\n body\n } = MessagePack.unpack(new Uint8Array(data as ArrayBuffer)) as {\n body: Uint8Array;\n hdr: { props: Record<string, string | number>; proto: number; sid: string; typ: string };\n };\n if (proto !== MessageProtocols.Shell) {\n return;\n }\n switch (typ) {\n case MessageTypes.New: {\n if (props.status == WebSocket.CLOSING) {\n onNotify(`Error: ${byteArrayToString(body as unknown as Buffer)}`);\n setSessionId(undefined);\n return close();\n } else {\n clearTimeout(healthcheckTimeout.current);\n healthcheckTimeout.current = setTimeout(healthcheckFailed, 65 * TIMEOUTS.oneSecond);\n if (socketRef.current) {\n socketRef.current.sessionId = sid;\n }\n return setSessionId(sid);\n }\n }\n case MessageTypes.Shell:\n return onMessageReceived(body);\n case MessageTypes.Stop:\n return close();\n case MessageTypes.Ping: {\n if (healthcheckTimeout.current) {\n clearTimeout(healthcheckTimeout.current);\n }\n sendMessage({ typ: MessageTypes.Pong, props: {} });\n const timeout = parseInt(props.timeout as string);\n if (timeout > 0) {\n healthcheckTimeout.current = setTimeout(healthcheckFailed, timeout * TIMEOUTS.oneSecond);\n }\n return;\n }\n default:\n break;\n }\n }),\n [close, healthcheckFailed, onMessageReceived, onNotify, sendMessage]\n );\n\n const onSocketError = useCallback(\n (error: Event): void => {\n onNotify(`WebSocket error: ${(error as ErrorEvent).message || 'Unknown error'}`);\n close();\n clearTimeout(healthcheckTimeout.current);\n },\n [close, onNotify]\n );\n\n const onSocketOpen = useCallback((): void => {\n sendMessage({ typ: MessageTypes.New, props: {} });\n onOpen(true);\n }, [onOpen, sendMessage]);\n\n const onSocketClose = useCallback(\n (e: CloseEvent): void => {\n console.log('closing');\n onClose(e);\n close();\n },\n [close, onClose]\n );\n\n const connect = useCallback(\n (deviceId: string): void => {\n const uri = `wss://${window.location.host}${apiUrl.v1}/deviceconnect/devices/${deviceId}/connect`;\n setSessionId(undefined);\n cookies.set('JWT', token, { path: '/', secure: true, sameSite: 'strict', maxAge: 5 });\n try {\n socketRef.current = new WebSocket(uri);\n } catch (error) {\n console.log(error);\n }\n },\n [token]\n );\n\n useEffect(() => {\n const currentSocket = socketRef.current;\n if (!currentSocket) {\n return;\n }\n\n currentSocket.addEventListener('close', onSocketClose);\n currentSocket.addEventListener('error', onSocketError);\n currentSocket.addEventListener('message', onSocketMessage);\n currentSocket.addEventListener('open', onSocketOpen);\n\n return () => {\n currentSocket.removeEventListener('close', onSocketClose);\n currentSocket.removeEventListener('error', onSocketError);\n currentSocket.removeEventListener('message', onSocketMessage);\n currentSocket.removeEventListener('open', onSocketOpen);\n };\n // eslint-disable-next-line react-hooks/refs\n }, [onSocketClose, onSocketError, onSocketMessage, onSocketOpen, socketRef.current?.readyState]);\n\n // eslint-disable-next-line react-hooks/refs\n return [connect, sendMessage, close, socketRef.current?.readyState ?? WebSocket.CLOSED, sessionId];\n};\n"],"mappings":"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"}
|
package/dist/sockethook.d.cts
CHANGED
|
@@ -13,14 +13,7 @@ type MessageProps = {
|
|
|
13
13
|
typ: string;
|
|
14
14
|
};
|
|
15
15
|
type UseSessionReturn = [connect: (deviceId: string) => void, sendMessage: (message: MessageProps) => void, close: () => void, readyState: number, sessionId: string | undefined];
|
|
16
|
-
declare const useSession: ({
|
|
17
|
-
onClose,
|
|
18
|
-
onHealthCheckFailed,
|
|
19
|
-
onMessageReceived,
|
|
20
|
-
onNotify,
|
|
21
|
-
onOpen,
|
|
22
|
-
token
|
|
23
|
-
}: UseSessionProps) => UseSessionReturn;
|
|
16
|
+
declare const useSession: ({ onClose, onHealthCheckFailed, onMessageReceived, onNotify, onOpen, token }: UseSessionProps) => UseSessionReturn;
|
|
24
17
|
//#endregion
|
|
25
18
|
export { useSession };
|
|
26
19
|
//# sourceMappingURL=sockethook.d.cts.map
|
package/dist/sockethook.d.ts
CHANGED
|
@@ -13,14 +13,7 @@ type MessageProps = {
|
|
|
13
13
|
typ: string;
|
|
14
14
|
};
|
|
15
15
|
type UseSessionReturn = [connect: (deviceId: string) => void, sendMessage: (message: MessageProps) => void, close: () => void, readyState: number, sessionId: string | undefined];
|
|
16
|
-
declare const useSession: ({
|
|
17
|
-
onClose,
|
|
18
|
-
onHealthCheckFailed,
|
|
19
|
-
onMessageReceived,
|
|
20
|
-
onNotify,
|
|
21
|
-
onOpen,
|
|
22
|
-
token
|
|
23
|
-
}: UseSessionProps) => UseSessionReturn;
|
|
16
|
+
declare const useSession: ({ onClose, onHealthCheckFailed, onMessageReceived, onNotify, onOpen, token }: UseSessionProps) => UseSessionReturn;
|
|
24
17
|
//#endregion
|
|
25
18
|
export { useSession };
|
|
26
19
|
//# sourceMappingURL=sockethook.d.ts.map
|
package/dist/sockethook.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Pt as TIMEOUTS, dt as DEVICE_MESSAGE_TYPES, h as apiUrl, ut as DEVICE_MESSAGE_PROTOCOLS } from "./constants-CerzXHnQ.js";
|
|
2
2
|
import { blobToString, byteArrayToString } from "@northern.tech/utils/helpers";
|
|
3
3
|
import Cookies from "universal-cookie";
|
|
4
4
|
import { useCallback, useEffect, useRef, useState } from "react";
|
|
@@ -66,7 +66,6 @@ const useSession = ({ onClose, onHealthCheckFailed, onMessageReceived, onNotify,
|
|
|
66
66
|
if (timeout > 0) healthcheckTimeout.current = setTimeout(healthcheckFailed, timeout * TIMEOUTS.oneSecond);
|
|
67
67
|
return;
|
|
68
68
|
}
|
|
69
|
-
default: break;
|
|
70
69
|
}
|
|
71
70
|
}), [
|
|
72
71
|
close,
|
package/dist/sockethook.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sockethook.js","names":["MessageProtocols","MessageTypes"],"sources":["../src/sockethook.ts"],"sourcesContent":["// Copyright 2022 Northern.tech AS\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport { useCallback, useEffect, useRef, useState } from 'react';\n\nimport { blobToString, byteArrayToString } from '@northern.tech/utils/helpers';\nimport { Packr } from 'msgpackr';\nimport Cookies from 'universal-cookie';\n\nimport { DEVICE_MESSAGE_PROTOCOLS as MessageProtocols, DEVICE_MESSAGE_TYPES as MessageTypes, TIMEOUTS, apiUrl } from './constants';\n\nconst cookies = new Cookies();\n\n// plain maps + omitted undefined fields keep the wire format compatible with the deviceconnect backend\nconst MessagePack = new Packr({ skipValues: [undefined], useRecords: false });\n\ntype UseSessionProps = {\n onClose: (event: CloseEvent) => void;\n onHealthCheckFailed: () => void;\n onMessageReceived: (body: Uint8Array) => void;\n onNotify: (message: string) => void;\n onOpen: (isOpen: boolean) => void;\n token: string;\n};\n\ntype MessageProps = {\n body?: Uint8Array;\n props: Record<string, string | number>;\n typ: string;\n};\n\ntype SessionWebSocket = WebSocket & { sessionId?: string };\n\ntype UseSessionReturn = [\n connect: (deviceId: string) => void,\n sendMessage: (message: MessageProps) => void,\n close: () => void,\n readyState: number,\n sessionId: string | undefined\n];\n\nexport const useSession = ({ onClose, onHealthCheckFailed, onMessageReceived, onNotify, onOpen, token }: UseSessionProps): UseSessionReturn => {\n const [sessionId, setSessionId] = useState<string | undefined>();\n const healthcheckTimeout = useRef<ReturnType<typeof setTimeout> | undefined>(undefined);\n const socketRef = useRef<SessionWebSocket | undefined>(undefined);\n const sendMessage = useCallback(({ typ, body, props }: MessageProps): void => {\n if (!socketRef.current) {\n return;\n }\n const proto_header = { proto: MessageProtocols.Shell, typ, sid: socketRef.current.sessionId, props };\n const encodedData = MessagePack.pack({ hdr: proto_header, body });\n socketRef.current.send(encodedData);\n }, []);\n\n const close = useCallback((): void => {\n if (!socketRef.current || socketRef.current?.readyState !== WebSocket.OPEN) {\n return;\n }\n sendMessage({ typ: MessageTypes.Stop, props: {} });\n socketRef.current.close();\n setSessionId(undefined);\n }, [sendMessage]);\n\n const healthcheckFailed = useCallback((): void => {\n onHealthCheckFailed();\n close();\n }, [close, onHealthCheckFailed]);\n\n const onSocketMessage = useCallback(\n (event: MessageEvent): Promise<void> =>\n blobToString(event.data).then((data: unknown) => {\n const {\n hdr: { props = {} as Record<string, string | number>, proto, sid, typ },\n body\n } = MessagePack.unpack(new Uint8Array(data as ArrayBuffer)) as {\n body: Uint8Array;\n hdr: { props: Record<string, string | number>; proto: number; sid: string; typ: string };\n };\n if (proto !== MessageProtocols.Shell) {\n return;\n }\n switch (typ) {\n case MessageTypes.New: {\n if (props.status == WebSocket.CLOSING) {\n onNotify(`Error: ${byteArrayToString(body as unknown as Buffer)}`);\n setSessionId(undefined);\n return close();\n } else {\n clearTimeout(healthcheckTimeout.current);\n healthcheckTimeout.current = setTimeout(healthcheckFailed, 65 * TIMEOUTS.oneSecond);\n if (socketRef.current) {\n socketRef.current.sessionId = sid;\n }\n return setSessionId(sid);\n }\n }\n case MessageTypes.Shell:\n return onMessageReceived(body);\n case MessageTypes.Stop:\n return close();\n case MessageTypes.Ping: {\n if (healthcheckTimeout.current) {\n clearTimeout(healthcheckTimeout.current);\n }\n sendMessage({ typ: MessageTypes.Pong, props: {} });\n const timeout = parseInt(props.timeout as string);\n if (timeout > 0) {\n healthcheckTimeout.current = setTimeout(healthcheckFailed, timeout * TIMEOUTS.oneSecond);\n }\n return;\n }\n default:\n break;\n }\n }),\n [close, healthcheckFailed, onMessageReceived, onNotify, sendMessage]\n );\n\n const onSocketError = useCallback(\n (error: Event): void => {\n onNotify(`WebSocket error: ${(error as ErrorEvent).message || 'Unknown error'}`);\n close();\n clearTimeout(healthcheckTimeout.current);\n },\n [close, onNotify]\n );\n\n const onSocketOpen = useCallback((): void => {\n sendMessage({ typ: MessageTypes.New, props: {} });\n onOpen(true);\n }, [onOpen, sendMessage]);\n\n const onSocketClose = useCallback(\n (e: CloseEvent): void => {\n console.log('closing');\n onClose(e);\n close();\n },\n [close, onClose]\n );\n\n const connect = useCallback(\n (deviceId: string): void => {\n const uri = `wss://${window.location.host}${apiUrl.v1}/deviceconnect/devices/${deviceId}/connect`;\n setSessionId(undefined);\n cookies.set('JWT', token, { path: '/', secure: true, sameSite: 'strict', maxAge: 5 });\n try {\n socketRef.current = new WebSocket(uri);\n } catch (error) {\n console.log(error);\n }\n },\n [token]\n );\n\n useEffect(() => {\n const currentSocket = socketRef.current;\n if (!currentSocket) {\n return;\n }\n\n currentSocket.addEventListener('close', onSocketClose);\n currentSocket.addEventListener('error', onSocketError);\n currentSocket.addEventListener('message', onSocketMessage);\n currentSocket.addEventListener('open', onSocketOpen);\n\n return () => {\n currentSocket.removeEventListener('close', onSocketClose);\n currentSocket.removeEventListener('error', onSocketError);\n currentSocket.removeEventListener('message', onSocketMessage);\n currentSocket.removeEventListener('open', onSocketOpen);\n };\n // eslint-disable-next-line react-hooks/refs\n }, [onSocketClose, onSocketError, onSocketMessage, onSocketOpen, socketRef.current?.readyState]);\n\n // eslint-disable-next-line react-hooks/refs\n return [connect, sendMessage, close, socketRef.current?.readyState ?? WebSocket.CLOSED, sessionId];\n};\n"],"mappings":";;;;;;AAqBA,MAAM,UAAU,IAAI,QAAQ;AAG5B,MAAM,cAAc,IAAI,MAAM;CAAE,YAAY,CAAC,KAAA,CAAS;CAAG,YAAY;AAAM,CAAC;AA2B5E,MAAa,cAAc,EAAE,SAAS,qBAAqB,mBAAmB,UAAU,QAAQ,YAA+C;CAC7I,MAAM,CAAC,WAAW,gBAAgB,SAA6B;CAC/D,MAAM,qBAAqB,OAAkD,KAAA,CAAS;CACtF,MAAM,YAAY,OAAqC,KAAA,CAAS;CAChE,MAAM,cAAc,aAAa,EAAE,KAAK,MAAM,YAAgC;EAC5E,IAAI,CAAC,UAAU,SACb;EAEF,MAAM,eAAe;GAAE,OAAOA,yBAAiB;GAAO;GAAK,KAAK,UAAU,QAAQ;GAAW;EAAM;EACnG,MAAM,cAAc,YAAY,KAAK;GAAE,KAAK;GAAc;EAAK,CAAC;EAChE,UAAU,QAAQ,KAAK,WAAW;CACpC,GAAG,CAAC,CAAC;CAEL,MAAM,QAAQ,kBAAwB;EACpC,IAAI,CAAC,UAAU,WAAW,UAAU,SAAS,eAAe,UAAU,MACpE;EAEF,YAAY;GAAE,KAAKC,qBAAa;GAAM,OAAO,CAAC;EAAE,CAAC;EACjD,UAAU,QAAQ,MAAM;EACxB,aAAa,KAAA,CAAS;CACxB,GAAG,CAAC,WAAW,CAAC;CAEhB,MAAM,oBAAoB,kBAAwB;EAChD,oBAAoB;EACpB,MAAM;CACR,GAAG,CAAC,OAAO,mBAAmB,CAAC;CAE/B,MAAM,kBAAkB,aACrB,UACC,aAAa,MAAM,IAAI,CAAC,CAAC,MAAM,SAAkB;EAC/C,MAAM,EACJ,KAAK,EAAE,QAAQ,CAAC,GAAsC,OAAO,KAAK,OAClE,SACE,YAAY,OAAO,IAAI,WAAW,IAAmB,CAAC;EAI1D,IAAI,UAAUD,yBAAiB,OAC7B;EAEF,QAAQ,KAAR;GACE,KAAKC,qBAAa,KAChB,IAAI,MAAM,UAAU,UAAU,SAAS;IACrC,SAAS,UAAU,kBAAkB,IAAyB,GAAG;IACjE,aAAa,KAAA,CAAS;IACtB,OAAO,MAAM;GACf,OAAO;IACL,aAAa,mBAAmB,OAAO;IACvC,mBAAmB,UAAU,WAAW,mBAAmB,KAAK,SAAS,SAAS;IAClF,IAAI,UAAU,SACZ,UAAU,QAAQ,YAAY;IAEhC,OAAO,aAAa,GAAG;GACzB;GAEF,KAAKA,qBAAa,OAChB,OAAO,kBAAkB,IAAI;GAC/B,KAAKA,qBAAa,MAChB,OAAO,MAAM;GACf,KAAKA,qBAAa,MAAM;IACtB,IAAI,mBAAmB,SACrB,aAAa,mBAAmB,OAAO;IAEzC,YAAY;KAAE,KAAKA,qBAAa;KAAM,OAAO,CAAC;IAAE,CAAC;IACjD,MAAM,UAAU,SAAS,MAAM,OAAiB;IAChD,IAAI,UAAU,GACZ,mBAAmB,UAAU,WAAW,mBAAmB,UAAU,SAAS,SAAS;IAEzF;GACF;
|
|
1
|
+
{"version":3,"file":"sockethook.js","names":["MessageProtocols","MessageTypes"],"sources":["../src/sockethook.ts"],"sourcesContent":["// Copyright 2022 Northern.tech AS\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport { useCallback, useEffect, useRef, useState } from 'react';\n\nimport { blobToString, byteArrayToString } from '@northern.tech/utils/helpers';\nimport { Packr } from 'msgpackr';\nimport Cookies from 'universal-cookie';\n\nimport { DEVICE_MESSAGE_PROTOCOLS as MessageProtocols, DEVICE_MESSAGE_TYPES as MessageTypes, TIMEOUTS, apiUrl } from './constants';\n\nconst cookies = new Cookies();\n\n// plain maps + omitted undefined fields keep the wire format compatible with the deviceconnect backend\nconst MessagePack = new Packr({ skipValues: [undefined], useRecords: false });\n\ntype UseSessionProps = {\n onClose: (event: CloseEvent) => void;\n onHealthCheckFailed: () => void;\n onMessageReceived: (body: Uint8Array) => void;\n onNotify: (message: string) => void;\n onOpen: (isOpen: boolean) => void;\n token: string;\n};\n\ntype MessageProps = {\n body?: Uint8Array;\n props: Record<string, string | number>;\n typ: string;\n};\n\ntype SessionWebSocket = WebSocket & { sessionId?: string };\n\ntype UseSessionReturn = [\n connect: (deviceId: string) => void,\n sendMessage: (message: MessageProps) => void,\n close: () => void,\n readyState: number,\n sessionId: string | undefined\n];\n\nexport const useSession = ({ onClose, onHealthCheckFailed, onMessageReceived, onNotify, onOpen, token }: UseSessionProps): UseSessionReturn => {\n const [sessionId, setSessionId] = useState<string | undefined>();\n const healthcheckTimeout = useRef<ReturnType<typeof setTimeout> | undefined>(undefined);\n const socketRef = useRef<SessionWebSocket | undefined>(undefined);\n const sendMessage = useCallback(({ typ, body, props }: MessageProps): void => {\n if (!socketRef.current) {\n return;\n }\n const proto_header = { proto: MessageProtocols.Shell, typ, sid: socketRef.current.sessionId, props };\n const encodedData = MessagePack.pack({ hdr: proto_header, body });\n socketRef.current.send(encodedData);\n }, []);\n\n const close = useCallback((): void => {\n if (!socketRef.current || socketRef.current?.readyState !== WebSocket.OPEN) {\n return;\n }\n sendMessage({ typ: MessageTypes.Stop, props: {} });\n socketRef.current.close();\n setSessionId(undefined);\n }, [sendMessage]);\n\n const healthcheckFailed = useCallback((): void => {\n onHealthCheckFailed();\n close();\n }, [close, onHealthCheckFailed]);\n\n const onSocketMessage = useCallback(\n (event: MessageEvent): Promise<void> =>\n blobToString(event.data).then((data: unknown) => {\n const {\n hdr: { props = {} as Record<string, string | number>, proto, sid, typ },\n body\n } = MessagePack.unpack(new Uint8Array(data as ArrayBuffer)) as {\n body: Uint8Array;\n hdr: { props: Record<string, string | number>; proto: number; sid: string; typ: string };\n };\n if (proto !== MessageProtocols.Shell) {\n return;\n }\n switch (typ) {\n case MessageTypes.New: {\n if (props.status == WebSocket.CLOSING) {\n onNotify(`Error: ${byteArrayToString(body as unknown as Buffer)}`);\n setSessionId(undefined);\n return close();\n } else {\n clearTimeout(healthcheckTimeout.current);\n healthcheckTimeout.current = setTimeout(healthcheckFailed, 65 * TIMEOUTS.oneSecond);\n if (socketRef.current) {\n socketRef.current.sessionId = sid;\n }\n return setSessionId(sid);\n }\n }\n case MessageTypes.Shell:\n return onMessageReceived(body);\n case MessageTypes.Stop:\n return close();\n case MessageTypes.Ping: {\n if (healthcheckTimeout.current) {\n clearTimeout(healthcheckTimeout.current);\n }\n sendMessage({ typ: MessageTypes.Pong, props: {} });\n const timeout = parseInt(props.timeout as string);\n if (timeout > 0) {\n healthcheckTimeout.current = setTimeout(healthcheckFailed, timeout * TIMEOUTS.oneSecond);\n }\n return;\n }\n default:\n break;\n }\n }),\n [close, healthcheckFailed, onMessageReceived, onNotify, sendMessage]\n );\n\n const onSocketError = useCallback(\n (error: Event): void => {\n onNotify(`WebSocket error: ${(error as ErrorEvent).message || 'Unknown error'}`);\n close();\n clearTimeout(healthcheckTimeout.current);\n },\n [close, onNotify]\n );\n\n const onSocketOpen = useCallback((): void => {\n sendMessage({ typ: MessageTypes.New, props: {} });\n onOpen(true);\n }, [onOpen, sendMessage]);\n\n const onSocketClose = useCallback(\n (e: CloseEvent): void => {\n console.log('closing');\n onClose(e);\n close();\n },\n [close, onClose]\n );\n\n const connect = useCallback(\n (deviceId: string): void => {\n const uri = `wss://${window.location.host}${apiUrl.v1}/deviceconnect/devices/${deviceId}/connect`;\n setSessionId(undefined);\n cookies.set('JWT', token, { path: '/', secure: true, sameSite: 'strict', maxAge: 5 });\n try {\n socketRef.current = new WebSocket(uri);\n } catch (error) {\n console.log(error);\n }\n },\n [token]\n );\n\n useEffect(() => {\n const currentSocket = socketRef.current;\n if (!currentSocket) {\n return;\n }\n\n currentSocket.addEventListener('close', onSocketClose);\n currentSocket.addEventListener('error', onSocketError);\n currentSocket.addEventListener('message', onSocketMessage);\n currentSocket.addEventListener('open', onSocketOpen);\n\n return () => {\n currentSocket.removeEventListener('close', onSocketClose);\n currentSocket.removeEventListener('error', onSocketError);\n currentSocket.removeEventListener('message', onSocketMessage);\n currentSocket.removeEventListener('open', onSocketOpen);\n };\n // eslint-disable-next-line react-hooks/refs\n }, [onSocketClose, onSocketError, onSocketMessage, onSocketOpen, socketRef.current?.readyState]);\n\n // eslint-disable-next-line react-hooks/refs\n return [connect, sendMessage, close, socketRef.current?.readyState ?? WebSocket.CLOSED, sessionId];\n};\n"],"mappings":"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"}
|
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { o as UserSliceType } from "./index-
|
|
3
|
-
import { i as ReleaseSliceType } from "./index-
|
|
4
|
-
import { a as PricePreview } from "./types-
|
|
5
|
-
import { n as OnboardingSliceType } from "./index-
|
|
6
|
-
import { o as DeploymentsSliceType, t as Deployment } from "./index-
|
|
7
|
-
import { c as
|
|
8
|
-
import { t as AppSliceType } from "./index-
|
|
9
|
-
import { t as MonitorSliceType } from "./index-
|
|
10
|
-
import { t as OrganizationSliceType } from "./index-
|
|
1
|
+
import { Ct as FilterOperator, H as emptyUiPermissions, S as Role, m as DeviceIssueOptionKey } from "./constants-B_H4squx.js";
|
|
2
|
+
import { o as UserSliceType } from "./index-CpfhQHfg.js";
|
|
3
|
+
import { i as ReleaseSliceType } from "./index-C8uiyxnb.js";
|
|
4
|
+
import { a as PricePreview } from "./types-B3qGQoMx.js";
|
|
5
|
+
import { n as OnboardingSliceType } from "./index-CoObjWL4.js";
|
|
6
|
+
import { o as DeploymentsSliceType, t as Deployment } from "./index-B8td4-rY.js";
|
|
7
|
+
import { c as DeviceSliceType, i as DeviceGroup, l as InventoryAttributes, r as DeviceFilter } from "./index-Bvyf8OO6.js";
|
|
8
|
+
import { t as AppSliceType } from "./index-Bs0c1-WY.js";
|
|
9
|
+
import { t as MonitorSliceType } from "./index-BAGyeC-q.js";
|
|
10
|
+
import { t as OrganizationSliceType } from "./index-ChKTa1aL.js";
|
|
11
11
|
import { Reducer, UnknownAction } from "@reduxjs/toolkit";
|
|
12
12
|
import { TypedUseSelectorHook } from "react-redux";
|
|
13
13
|
import { AxiosError } from "axios";
|
|
14
14
|
import { AttributeFilterPredicate, AttributeResponse, FilterV2, InvoiceLineItem, Scope } from "@northern.tech/types/MenderTypes";
|
|
15
|
-
|
|
16
15
|
//#region src/utils.d.ts
|
|
17
16
|
type FilterProcessorValue = string | string[] | number | boolean;
|
|
18
17
|
type FilterTerm = {
|
|
@@ -23,14 +22,7 @@ type FilterTerm = {
|
|
|
23
22
|
};
|
|
24
23
|
declare const mapFiltersToTerms: (filters: DeviceFilter[]) => FilterTerm[];
|
|
25
24
|
declare const mapTermsToFilters: (terms: FilterTerm[]) => DeviceFilter[];
|
|
26
|
-
declare const convertDeviceListStateToFilters: ({
|
|
27
|
-
filters,
|
|
28
|
-
group,
|
|
29
|
-
groups,
|
|
30
|
-
offlineThreshold,
|
|
31
|
-
selectedIssues,
|
|
32
|
-
status
|
|
33
|
-
}: {
|
|
25
|
+
declare const convertDeviceListStateToFilters: ({ filters, group, groups, offlineThreshold, selectedIssues, status }: {
|
|
34
26
|
filters?: DeviceFilter[];
|
|
35
27
|
group?: string;
|
|
36
28
|
groups?: {
|
|
@@ -45,28 +37,19 @@ declare const convertDeviceListStateToFilters: ({
|
|
|
45
37
|
};
|
|
46
38
|
declare const filtersFilter: (item: DeviceFilter, index: number, array: DeviceFilter[]) => boolean;
|
|
47
39
|
declare const stripOrchestratorManifestPrefix: (key: string) => string;
|
|
48
|
-
declare const getAttributeScopeLabel: ({
|
|
49
|
-
key,
|
|
50
|
-
scope
|
|
51
|
-
}: {
|
|
40
|
+
declare const getAttributeScopeLabel: ({ key, scope }: {
|
|
52
41
|
key?: string;
|
|
53
42
|
scope?: string;
|
|
54
43
|
}) => string;
|
|
55
44
|
declare const stripUndefined: <T extends Record<string, unknown>>(obj: T) => Partial<T>;
|
|
56
|
-
declare const listItemMapper: <T extends object>(byId: Record<string, T>, ids: string[], {
|
|
57
|
-
cutOffSize,
|
|
58
|
-
defaultObject
|
|
59
|
-
}: {
|
|
45
|
+
declare const listItemMapper: <T extends object>(byId: Record<string, T>, ids: string[], { cutOffSize, defaultObject }: {
|
|
60
46
|
cutOffSize?: number;
|
|
61
47
|
defaultObject?: Partial<T>;
|
|
62
48
|
}) => T[];
|
|
63
49
|
type UiPermissions = typeof emptyUiPermissions;
|
|
64
50
|
declare const mergePermissions: (existingPermissions: UiPermissions | undefined, addedPermissions: UiPermissions) => UiPermissions;
|
|
65
51
|
declare const mapUserRolesToUiPermissions: (userRoles: string[], roles: Record<string, Role>) => UiPermissions;
|
|
66
|
-
declare const progress: ({
|
|
67
|
-
loaded,
|
|
68
|
-
total
|
|
69
|
-
}: {
|
|
52
|
+
declare const progress: ({ loaded, total }: {
|
|
70
53
|
loaded: number;
|
|
71
54
|
total?: number;
|
|
72
55
|
}) => number;
|
|
@@ -115,11 +98,7 @@ declare const convertToBackendSPLimits: (limits: Record<string, number | string>
|
|
|
115
98
|
Name: string;
|
|
116
99
|
value: number;
|
|
117
100
|
}>;
|
|
118
|
-
declare const dispatchDelayed: ({
|
|
119
|
-
action,
|
|
120
|
-
delay,
|
|
121
|
-
dispatch
|
|
122
|
-
}: {
|
|
101
|
+
declare const dispatchDelayed: ({ action, delay, dispatch }: {
|
|
123
102
|
action: any;
|
|
124
103
|
delay?: number;
|
|
125
104
|
dispatch: AppDispatch;
|
|
@@ -237,7 +216,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
237
216
|
pendingMeta?: unknown;
|
|
238
217
|
fulfilledMeta?: unknown;
|
|
239
218
|
rejectedMeta?: unknown;
|
|
240
|
-
}, keyof ThunkApiConfig> extends infer T ? { [K in keyof T]: T[K] } : never> & {
|
|
219
|
+
}, keyof ThunkApiConfig> extends (infer T) ? { [K in keyof T]: T[K]; } : never> & {
|
|
241
220
|
withTypes<ThunkApiConfig_1 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
242
221
|
dispatch: AppDispatch;
|
|
243
222
|
state: RootState;
|
|
@@ -247,7 +226,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
247
226
|
pendingMeta?: unknown;
|
|
248
227
|
fulfilledMeta?: unknown;
|
|
249
228
|
rejectedMeta?: unknown;
|
|
250
|
-
}, keyof ThunkApiConfig> extends infer T_2 ? { [K in keyof T_2]: T_2[K] } : never, keyof ThunkApiConfig_1> extends infer T_1 ? { [K_1 in keyof T_1]: T_1[K_1] } : never> & {
|
|
229
|
+
}, keyof ThunkApiConfig> extends (infer T_2) ? { [K in keyof T_2]: T_2[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_1) ? { [K_1 in keyof T_1]: T_1[K_1]; } : never> & {
|
|
251
230
|
withTypes<ThunkApiConfig_2 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
252
231
|
dispatch: AppDispatch;
|
|
253
232
|
state: RootState;
|
|
@@ -257,7 +236,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
257
236
|
pendingMeta?: unknown;
|
|
258
237
|
fulfilledMeta?: unknown;
|
|
259
238
|
rejectedMeta?: unknown;
|
|
260
|
-
}, keyof ThunkApiConfig> extends infer T_5 ? { [K in keyof T_5]: T_5[K] } : never, keyof ThunkApiConfig_1> extends infer T_4 ? { [K_1 in keyof T_4]: T_4[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_3 ? { [K_2 in keyof T_3]: T_3[K_2] } : never> & {
|
|
239
|
+
}, keyof ThunkApiConfig> extends (infer T_5) ? { [K in keyof T_5]: T_5[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_4) ? { [K_1 in keyof T_4]: T_4[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_3) ? { [K_2 in keyof T_3]: T_3[K_2]; } : never> & {
|
|
261
240
|
withTypes<ThunkApiConfig_3 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
262
241
|
dispatch: AppDispatch;
|
|
263
242
|
state: RootState;
|
|
@@ -267,7 +246,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
267
246
|
pendingMeta?: unknown;
|
|
268
247
|
fulfilledMeta?: unknown;
|
|
269
248
|
rejectedMeta?: unknown;
|
|
270
|
-
}, keyof ThunkApiConfig> extends infer T_9 ? { [K in keyof T_9]: T_9[K] } : never, keyof ThunkApiConfig_1> extends infer T_8 ? { [K_1 in keyof T_8]: T_8[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_7 ? { [K_2 in keyof T_7]: T_7[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_6 ? { [K_3 in keyof T_6]: T_6[K_3] } : never> & {
|
|
249
|
+
}, keyof ThunkApiConfig> extends (infer T_9) ? { [K in keyof T_9]: T_9[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_8) ? { [K_1 in keyof T_8]: T_8[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_7) ? { [K_2 in keyof T_7]: T_7[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_6) ? { [K_3 in keyof T_6]: T_6[K_3]; } : never> & {
|
|
271
250
|
withTypes<ThunkApiConfig_4 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
272
251
|
dispatch: AppDispatch;
|
|
273
252
|
state: RootState;
|
|
@@ -277,7 +256,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
277
256
|
pendingMeta?: unknown;
|
|
278
257
|
fulfilledMeta?: unknown;
|
|
279
258
|
rejectedMeta?: unknown;
|
|
280
|
-
}, keyof ThunkApiConfig> extends infer T_14 ? { [K in keyof T_14]: T_14[K] } : never, keyof ThunkApiConfig_1> extends infer T_13 ? { [K_1 in keyof T_13]: T_13[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_12 ? { [K_2 in keyof T_12]: T_12[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_11 ? { [K_3 in keyof T_11]: T_11[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_10 ? { [K_4 in keyof T_10]: T_10[K_4] } : never> & {
|
|
259
|
+
}, keyof ThunkApiConfig> extends (infer T_14) ? { [K in keyof T_14]: T_14[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_13) ? { [K_1 in keyof T_13]: T_13[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_12) ? { [K_2 in keyof T_12]: T_12[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_11) ? { [K_3 in keyof T_11]: T_11[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_10) ? { [K_4 in keyof T_10]: T_10[K_4]; } : never> & {
|
|
281
260
|
withTypes<ThunkApiConfig_5 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
282
261
|
dispatch: AppDispatch;
|
|
283
262
|
state: RootState;
|
|
@@ -287,7 +266,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
287
266
|
pendingMeta?: unknown;
|
|
288
267
|
fulfilledMeta?: unknown;
|
|
289
268
|
rejectedMeta?: unknown;
|
|
290
|
-
}, keyof ThunkApiConfig> extends infer T_20 ? { [K in keyof T_20]: T_20[K] } : never, keyof ThunkApiConfig_1> extends infer T_19 ? { [K_1 in keyof T_19]: T_19[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_18 ? { [K_2 in keyof T_18]: T_18[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_17 ? { [K_3 in keyof T_17]: T_17[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_16 ? { [K_4 in keyof T_16]: T_16[K_4] } : never, keyof ThunkApiConfig_5> extends infer T_15 ? { [K_5 in keyof T_15]: T_15[K_5] } : never> & {
|
|
269
|
+
}, keyof ThunkApiConfig> extends (infer T_20) ? { [K in keyof T_20]: T_20[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_19) ? { [K_1 in keyof T_19]: T_19[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_18) ? { [K_2 in keyof T_18]: T_18[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_17) ? { [K_3 in keyof T_17]: T_17[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_16) ? { [K_4 in keyof T_16]: T_16[K_4]; } : never, keyof ThunkApiConfig_5> extends (infer T_15) ? { [K_5 in keyof T_15]: T_15[K_5]; } : never> & {
|
|
291
270
|
withTypes<ThunkApiConfig_6 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_6 & Omit<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
292
271
|
dispatch: AppDispatch;
|
|
293
272
|
state: RootState;
|
|
@@ -297,7 +276,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
297
276
|
pendingMeta?: unknown;
|
|
298
277
|
fulfilledMeta?: unknown;
|
|
299
278
|
rejectedMeta?: unknown;
|
|
300
|
-
}, keyof ThunkApiConfig> extends infer T_27 ? { [K in keyof T_27]: T_27[K] } : never, keyof ThunkApiConfig_1> extends infer T_26 ? { [K_1 in keyof T_26]: T_26[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_25 ? { [K_2 in keyof T_25]: T_25[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_24 ? { [K_3 in keyof T_24]: T_24[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_23 ? { [K_4 in keyof T_23]: T_23[K_4] } : never, keyof ThunkApiConfig_5> extends infer T_22 ? { [K_5 in keyof T_22]: T_22[K_5] } : never, keyof ThunkApiConfig_6> extends infer T_21 ? { [K_6 in keyof T_21]: T_21[K_6] } : never> & {
|
|
279
|
+
}, keyof ThunkApiConfig> extends (infer T_27) ? { [K in keyof T_27]: T_27[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_26) ? { [K_1 in keyof T_26]: T_26[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_25) ? { [K_2 in keyof T_25]: T_25[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_24) ? { [K_3 in keyof T_24]: T_24[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_23) ? { [K_4 in keyof T_23]: T_23[K_4]; } : never, keyof ThunkApiConfig_5> extends (infer T_22) ? { [K_5 in keyof T_22]: T_22[K_5]; } : never, keyof ThunkApiConfig_6> extends (infer T_21) ? { [K_6 in keyof T_21]: T_21[K_6]; } : never> & {
|
|
301
280
|
withTypes<ThunkApiConfig_7 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_7 & Omit<ThunkApiConfig_6 & Omit<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
302
281
|
dispatch: AppDispatch;
|
|
303
282
|
state: RootState;
|
|
@@ -307,7 +286,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
307
286
|
pendingMeta?: unknown;
|
|
308
287
|
fulfilledMeta?: unknown;
|
|
309
288
|
rejectedMeta?: unknown;
|
|
310
|
-
}, keyof ThunkApiConfig> extends infer T_35 ? { [K in keyof T_35]: T_35[K] } : never, keyof ThunkApiConfig_1> extends infer T_34 ? { [K_1 in keyof T_34]: T_34[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_33 ? { [K_2 in keyof T_33]: T_33[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_32 ? { [K_3 in keyof T_32]: T_32[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_31 ? { [K_4 in keyof T_31]: T_31[K_4] } : never, keyof ThunkApiConfig_5> extends infer T_30 ? { [K_5 in keyof T_30]: T_30[K_5] } : never, keyof ThunkApiConfig_6> extends infer T_29 ? { [K_6 in keyof T_29]: T_29[K_6] } : never, keyof ThunkApiConfig_7> extends infer T_28 ? { [K_7 in keyof T_28]: T_28[K_7] } : never> & {
|
|
289
|
+
}, keyof ThunkApiConfig> extends (infer T_35) ? { [K in keyof T_35]: T_35[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_34) ? { [K_1 in keyof T_34]: T_34[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_33) ? { [K_2 in keyof T_33]: T_33[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_32) ? { [K_3 in keyof T_32]: T_32[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_31) ? { [K_4 in keyof T_31]: T_31[K_4]; } : never, keyof ThunkApiConfig_5> extends (infer T_30) ? { [K_5 in keyof T_30]: T_30[K_5]; } : never, keyof ThunkApiConfig_6> extends (infer T_29) ? { [K_6 in keyof T_29]: T_29[K_6]; } : never, keyof ThunkApiConfig_7> extends (infer T_28) ? { [K_7 in keyof T_28]: T_28[K_7]; } : never> & {
|
|
311
290
|
withTypes<ThunkApiConfig_8 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_8 & Omit<ThunkApiConfig_7 & Omit<ThunkApiConfig_6 & Omit<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
312
291
|
dispatch: AppDispatch;
|
|
313
292
|
state: RootState;
|
|
@@ -317,7 +296,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
317
296
|
pendingMeta?: unknown;
|
|
318
297
|
fulfilledMeta?: unknown;
|
|
319
298
|
rejectedMeta?: unknown;
|
|
320
|
-
}, keyof ThunkApiConfig> extends infer T_44 ? { [K in keyof T_44]: T_44[K] } : never, keyof ThunkApiConfig_1> extends infer T_43 ? { [K_1 in keyof T_43]: T_43[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_42 ? { [K_2 in keyof T_42]: T_42[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_41 ? { [K_3 in keyof T_41]: T_41[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_40 ? { [K_4 in keyof T_40]: T_40[K_4] } : never, keyof ThunkApiConfig_5> extends infer T_39 ? { [K_5 in keyof T_39]: T_39[K_5] } : never, keyof ThunkApiConfig_6> extends infer T_38 ? { [K_6 in keyof T_38]: T_38[K_6] } : never, keyof ThunkApiConfig_7> extends infer T_37 ? { [K_7 in keyof T_37]: T_37[K_7] } : never, keyof ThunkApiConfig_8> extends infer T_36 ? { [K_8 in keyof T_36]: T_36[K_8] } : never> & {
|
|
299
|
+
}, keyof ThunkApiConfig> extends (infer T_44) ? { [K in keyof T_44]: T_44[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_43) ? { [K_1 in keyof T_43]: T_43[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_42) ? { [K_2 in keyof T_42]: T_42[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_41) ? { [K_3 in keyof T_41]: T_41[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_40) ? { [K_4 in keyof T_40]: T_40[K_4]; } : never, keyof ThunkApiConfig_5> extends (infer T_39) ? { [K_5 in keyof T_39]: T_39[K_5]; } : never, keyof ThunkApiConfig_6> extends (infer T_38) ? { [K_6 in keyof T_38]: T_38[K_6]; } : never, keyof ThunkApiConfig_7> extends (infer T_37) ? { [K_7 in keyof T_37]: T_37[K_7]; } : never, keyof ThunkApiConfig_8> extends (infer T_36) ? { [K_8 in keyof T_36]: T_36[K_8]; } : never> & {
|
|
321
300
|
withTypes<ThunkApiConfig_9 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_9 & Omit<ThunkApiConfig_8 & Omit<ThunkApiConfig_7 & Omit<ThunkApiConfig_6 & Omit<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
322
301
|
dispatch: AppDispatch;
|
|
323
302
|
state: RootState;
|
|
@@ -327,8 +306,8 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
327
306
|
pendingMeta?: unknown;
|
|
328
307
|
fulfilledMeta?: unknown;
|
|
329
308
|
rejectedMeta?: unknown;
|
|
330
|
-
}, keyof ThunkApiConfig> extends infer T_54 ? { [K in keyof T_54]: T_54[K] } : never, keyof ThunkApiConfig_1> extends infer T_53 ? { [K_1 in keyof T_53]: T_53[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_52 ? { [K_2 in keyof T_52]: T_52[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_51 ? { [K_3 in keyof T_51]: T_51[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_50 ? { [K_4 in keyof T_50]: T_50[K_4] } : never, keyof ThunkApiConfig_5> extends infer T_49 ? { [K_5 in keyof T_49]: T_49[K_5] } : never, keyof ThunkApiConfig_6> extends infer T_48 ? { [K_6 in keyof T_48]: T_48[K_6] } : never, keyof ThunkApiConfig_7> extends infer T_47 ? { [K_7 in keyof T_47]: T_47[K_7] } : never, keyof ThunkApiConfig_8> extends infer T_46 ? { [K_8 in keyof T_46]: T_46[K_8] } : never, keyof ThunkApiConfig_9> extends infer T_45 ? { [K_9 in keyof T_45]: T_45[K_9] } : never> & {
|
|
331
|
-
withTypes<ThunkApiConfig_10 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_10 & Omit<ThunkApiConfig_9 & Omit<ThunkApiConfig_8 & Omit<ThunkApiConfig_7 & Omit<ThunkApiConfig_6 & Omit<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit< /*elided*/any, keyof ThunkApiConfig> extends infer T_65 ? { [K in keyof T_65]: T_65[K] } : never, keyof ThunkApiConfig_1> extends infer T_64 ? { [K_1 in keyof T_64]: T_64[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_63 ? { [K_2 in keyof T_63]: T_63[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_62 ? { [K_3 in keyof T_62]: T_62[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_61 ? { [K_4 in keyof T_61]: T_61[K_4] } : never, keyof ThunkApiConfig_5> extends infer T_60 ? { [K_5 in keyof T_60]: T_60[K_5] } : never, keyof ThunkApiConfig_6> extends infer T_59 ? { [K_6 in keyof T_59]: T_59[K_6] } : never, keyof ThunkApiConfig_7> extends infer T_58 ? { [K_7 in keyof T_58]: T_58[K_7] } : never, keyof ThunkApiConfig_8> extends infer T_57 ? { [K_8 in keyof T_57]: T_57[K_8] } : never, keyof ThunkApiConfig_9> extends infer T_56 ? { [K_9 in keyof T_56]: T_56[K_9] } : never, keyof ThunkApiConfig_10> extends infer T_55 ? { [K_10 in keyof T_55]: T_55[K_10] } : never> & /*elided*/any;
|
|
309
|
+
}, keyof ThunkApiConfig> extends (infer T_54) ? { [K in keyof T_54]: T_54[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_53) ? { [K_1 in keyof T_53]: T_53[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_52) ? { [K_2 in keyof T_52]: T_52[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_51) ? { [K_3 in keyof T_51]: T_51[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_50) ? { [K_4 in keyof T_50]: T_50[K_4]; } : never, keyof ThunkApiConfig_5> extends (infer T_49) ? { [K_5 in keyof T_49]: T_49[K_5]; } : never, keyof ThunkApiConfig_6> extends (infer T_48) ? { [K_6 in keyof T_48]: T_48[K_6]; } : never, keyof ThunkApiConfig_7> extends (infer T_47) ? { [K_7 in keyof T_47]: T_47[K_7]; } : never, keyof ThunkApiConfig_8> extends (infer T_46) ? { [K_8 in keyof T_46]: T_46[K_8]; } : never, keyof ThunkApiConfig_9> extends (infer T_45) ? { [K_9 in keyof T_45]: T_45[K_9]; } : never> & {
|
|
310
|
+
withTypes<ThunkApiConfig_10 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_10 & Omit<ThunkApiConfig_9 & Omit<ThunkApiConfig_8 & Omit<ThunkApiConfig_7 & Omit<ThunkApiConfig_6 & Omit<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit< /*elided*/ any, keyof ThunkApiConfig> extends (infer T_65) ? { [K in keyof T_65]: T_65[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_64) ? { [K_1 in keyof T_64]: T_64[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_63) ? { [K_2 in keyof T_63]: T_63[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_62) ? { [K_3 in keyof T_62]: T_62[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_61) ? { [K_4 in keyof T_61]: T_61[K_4]; } : never, keyof ThunkApiConfig_5> extends (infer T_60) ? { [K_5 in keyof T_60]: T_60[K_5]; } : never, keyof ThunkApiConfig_6> extends (infer T_59) ? { [K_6 in keyof T_59]: T_59[K_6]; } : never, keyof ThunkApiConfig_7> extends (infer T_58) ? { [K_7 in keyof T_58]: T_58[K_7]; } : never, keyof ThunkApiConfig_8> extends (infer T_57) ? { [K_8 in keyof T_57]: T_57[K_8]; } : never, keyof ThunkApiConfig_9> extends (infer T_56) ? { [K_9 in keyof T_56]: T_56[K_9]; } : never, keyof ThunkApiConfig_10> extends (infer T_55) ? { [K_10 in keyof T_55]: T_55[K_10]; } : never> & /*elided*/ any;
|
|
332
311
|
};
|
|
333
312
|
};
|
|
334
313
|
};
|
|
@@ -342,4 +321,4 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
342
321
|
};
|
|
343
322
|
//#endregion
|
|
344
323
|
export { mapTermsToFilters as A, getDeploymentState as C, listItemMapper as D, isDarkMode as E, statCollector as F, stringToBoolean as I, stripOrchestratorManifestPrefix as L, mergePermissions as M, parseSubscriptionPreview as N, mapDeviceAttributes as O, progress as P, stripUndefined as R, getAttributeScopeLabel as S, groupDeploymentStats as T, dispatchDelayed as _, commonErrorHandler as a, filtersFilter as b, sessionReducer as c, useAppSelector as d, DeploymentStats as f, convertToBackendSPLimits as g, convertDeviceListStateToFilters as h, commonErrorFallback as i, mapUserRolesToUiPermissions as j, mapFiltersToTerms as k, store as l, FilterTerm as m, MenderEnvironment as n, createAppAsyncThunk as o, ErrorWithResponse as p, RootState as r, getConfiguredStore as s, AppDispatch as t, useAppDispatch as u, ensureVersionString as v, groupDeploymentDevicesStats as w, generateDeploymentGroupDetails as x, extractErrorMessage as y };
|
|
345
|
-
//# sourceMappingURL=store-
|
|
324
|
+
//# sourceMappingURL=store-CPptM5Ts.d.ts.map
|
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { o as UserSliceType } from "./index-
|
|
3
|
-
import { i as ReleaseSliceType } from "./index-
|
|
4
|
-
import { a as PricePreview } from "./types-
|
|
5
|
-
import { n as OnboardingSliceType } from "./index-
|
|
6
|
-
import { o as DeploymentsSliceType, t as Deployment } from "./index-
|
|
7
|
-
import { c as
|
|
8
|
-
import { t as AppSliceType } from "./index-
|
|
9
|
-
import { t as MonitorSliceType } from "./index-
|
|
10
|
-
import { t as OrganizationSliceType } from "./index-
|
|
1
|
+
import { Ct as FilterOperator, H as emptyUiPermissions, S as Role, m as DeviceIssueOptionKey } from "./constants-Rl3FJzFf.cjs";
|
|
2
|
+
import { o as UserSliceType } from "./index-BgF6rhXn.cjs";
|
|
3
|
+
import { i as ReleaseSliceType } from "./index-DiAjzARZ.cjs";
|
|
4
|
+
import { a as PricePreview } from "./types-B80ckxiy.cjs";
|
|
5
|
+
import { n as OnboardingSliceType } from "./index-CoObjWL4.cjs";
|
|
6
|
+
import { o as DeploymentsSliceType, t as Deployment } from "./index-mvxjivTJ.cjs";
|
|
7
|
+
import { c as DeviceSliceType, i as DeviceGroup, l as InventoryAttributes, r as DeviceFilter } from "./index-CiQ95u1W.cjs";
|
|
8
|
+
import { t as AppSliceType } from "./index-DeOpb2oK.cjs";
|
|
9
|
+
import { t as MonitorSliceType } from "./index-Ctj2r57a.cjs";
|
|
10
|
+
import { t as OrganizationSliceType } from "./index-C_LGDJN2.cjs";
|
|
11
11
|
import { AttributeFilterPredicate, AttributeResponse, FilterV2, InvoiceLineItem, Scope } from "@northern.tech/types/MenderTypes";
|
|
12
12
|
import { Reducer, UnknownAction } from "@reduxjs/toolkit";
|
|
13
13
|
import { AxiosError } from "axios";
|
|
14
14
|
import { TypedUseSelectorHook } from "react-redux";
|
|
15
|
-
|
|
16
15
|
//#region src/utils.d.ts
|
|
17
16
|
type FilterProcessorValue = string | string[] | number | boolean;
|
|
18
17
|
type FilterTerm = {
|
|
@@ -23,14 +22,7 @@ type FilterTerm = {
|
|
|
23
22
|
};
|
|
24
23
|
declare const mapFiltersToTerms: (filters: DeviceFilter[]) => FilterTerm[];
|
|
25
24
|
declare const mapTermsToFilters: (terms: FilterTerm[]) => DeviceFilter[];
|
|
26
|
-
declare const convertDeviceListStateToFilters: ({
|
|
27
|
-
filters,
|
|
28
|
-
group,
|
|
29
|
-
groups,
|
|
30
|
-
offlineThreshold,
|
|
31
|
-
selectedIssues,
|
|
32
|
-
status
|
|
33
|
-
}: {
|
|
25
|
+
declare const convertDeviceListStateToFilters: ({ filters, group, groups, offlineThreshold, selectedIssues, status }: {
|
|
34
26
|
filters?: DeviceFilter[];
|
|
35
27
|
group?: string;
|
|
36
28
|
groups?: {
|
|
@@ -45,28 +37,19 @@ declare const convertDeviceListStateToFilters: ({
|
|
|
45
37
|
};
|
|
46
38
|
declare const filtersFilter: (item: DeviceFilter, index: number, array: DeviceFilter[]) => boolean;
|
|
47
39
|
declare const stripOrchestratorManifestPrefix: (key: string) => string;
|
|
48
|
-
declare const getAttributeScopeLabel: ({
|
|
49
|
-
key,
|
|
50
|
-
scope
|
|
51
|
-
}: {
|
|
40
|
+
declare const getAttributeScopeLabel: ({ key, scope }: {
|
|
52
41
|
key?: string;
|
|
53
42
|
scope?: string;
|
|
54
43
|
}) => string;
|
|
55
44
|
declare const stripUndefined: <T extends Record<string, unknown>>(obj: T) => Partial<T>;
|
|
56
|
-
declare const listItemMapper: <T extends object>(byId: Record<string, T>, ids: string[], {
|
|
57
|
-
cutOffSize,
|
|
58
|
-
defaultObject
|
|
59
|
-
}: {
|
|
45
|
+
declare const listItemMapper: <T extends object>(byId: Record<string, T>, ids: string[], { cutOffSize, defaultObject }: {
|
|
60
46
|
cutOffSize?: number;
|
|
61
47
|
defaultObject?: Partial<T>;
|
|
62
48
|
}) => T[];
|
|
63
49
|
type UiPermissions = typeof emptyUiPermissions;
|
|
64
50
|
declare const mergePermissions: (existingPermissions: UiPermissions | undefined, addedPermissions: UiPermissions) => UiPermissions;
|
|
65
51
|
declare const mapUserRolesToUiPermissions: (userRoles: string[], roles: Record<string, Role>) => UiPermissions;
|
|
66
|
-
declare const progress: ({
|
|
67
|
-
loaded,
|
|
68
|
-
total
|
|
69
|
-
}: {
|
|
52
|
+
declare const progress: ({ loaded, total }: {
|
|
70
53
|
loaded: number;
|
|
71
54
|
total?: number;
|
|
72
55
|
}) => number;
|
|
@@ -115,11 +98,7 @@ declare const convertToBackendSPLimits: (limits: Record<string, number | string>
|
|
|
115
98
|
Name: string;
|
|
116
99
|
value: number;
|
|
117
100
|
}>;
|
|
118
|
-
declare const dispatchDelayed: ({
|
|
119
|
-
action,
|
|
120
|
-
delay,
|
|
121
|
-
dispatch
|
|
122
|
-
}: {
|
|
101
|
+
declare const dispatchDelayed: ({ action, delay, dispatch }: {
|
|
123
102
|
action: any;
|
|
124
103
|
delay?: number;
|
|
125
104
|
dispatch: AppDispatch;
|
|
@@ -237,7 +216,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
237
216
|
pendingMeta?: unknown;
|
|
238
217
|
fulfilledMeta?: unknown;
|
|
239
218
|
rejectedMeta?: unknown;
|
|
240
|
-
}, keyof ThunkApiConfig> extends infer T ? { [K in keyof T]: T[K] } : never> & {
|
|
219
|
+
}, keyof ThunkApiConfig> extends (infer T) ? { [K in keyof T]: T[K]; } : never> & {
|
|
241
220
|
withTypes<ThunkApiConfig_1 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
242
221
|
dispatch: AppDispatch;
|
|
243
222
|
state: RootState;
|
|
@@ -247,7 +226,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
247
226
|
pendingMeta?: unknown;
|
|
248
227
|
fulfilledMeta?: unknown;
|
|
249
228
|
rejectedMeta?: unknown;
|
|
250
|
-
}, keyof ThunkApiConfig> extends infer T_2 ? { [K in keyof T_2]: T_2[K] } : never, keyof ThunkApiConfig_1> extends infer T_1 ? { [K_1 in keyof T_1]: T_1[K_1] } : never> & {
|
|
229
|
+
}, keyof ThunkApiConfig> extends (infer T_2) ? { [K in keyof T_2]: T_2[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_1) ? { [K_1 in keyof T_1]: T_1[K_1]; } : never> & {
|
|
251
230
|
withTypes<ThunkApiConfig_2 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
252
231
|
dispatch: AppDispatch;
|
|
253
232
|
state: RootState;
|
|
@@ -257,7 +236,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
257
236
|
pendingMeta?: unknown;
|
|
258
237
|
fulfilledMeta?: unknown;
|
|
259
238
|
rejectedMeta?: unknown;
|
|
260
|
-
}, keyof ThunkApiConfig> extends infer T_5 ? { [K in keyof T_5]: T_5[K] } : never, keyof ThunkApiConfig_1> extends infer T_4 ? { [K_1 in keyof T_4]: T_4[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_3 ? { [K_2 in keyof T_3]: T_3[K_2] } : never> & {
|
|
239
|
+
}, keyof ThunkApiConfig> extends (infer T_5) ? { [K in keyof T_5]: T_5[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_4) ? { [K_1 in keyof T_4]: T_4[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_3) ? { [K_2 in keyof T_3]: T_3[K_2]; } : never> & {
|
|
261
240
|
withTypes<ThunkApiConfig_3 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
262
241
|
dispatch: AppDispatch;
|
|
263
242
|
state: RootState;
|
|
@@ -267,7 +246,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
267
246
|
pendingMeta?: unknown;
|
|
268
247
|
fulfilledMeta?: unknown;
|
|
269
248
|
rejectedMeta?: unknown;
|
|
270
|
-
}, keyof ThunkApiConfig> extends infer T_9 ? { [K in keyof T_9]: T_9[K] } : never, keyof ThunkApiConfig_1> extends infer T_8 ? { [K_1 in keyof T_8]: T_8[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_7 ? { [K_2 in keyof T_7]: T_7[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_6 ? { [K_3 in keyof T_6]: T_6[K_3] } : never> & {
|
|
249
|
+
}, keyof ThunkApiConfig> extends (infer T_9) ? { [K in keyof T_9]: T_9[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_8) ? { [K_1 in keyof T_8]: T_8[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_7) ? { [K_2 in keyof T_7]: T_7[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_6) ? { [K_3 in keyof T_6]: T_6[K_3]; } : never> & {
|
|
271
250
|
withTypes<ThunkApiConfig_4 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
272
251
|
dispatch: AppDispatch;
|
|
273
252
|
state: RootState;
|
|
@@ -277,7 +256,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
277
256
|
pendingMeta?: unknown;
|
|
278
257
|
fulfilledMeta?: unknown;
|
|
279
258
|
rejectedMeta?: unknown;
|
|
280
|
-
}, keyof ThunkApiConfig> extends infer T_14 ? { [K in keyof T_14]: T_14[K] } : never, keyof ThunkApiConfig_1> extends infer T_13 ? { [K_1 in keyof T_13]: T_13[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_12 ? { [K_2 in keyof T_12]: T_12[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_11 ? { [K_3 in keyof T_11]: T_11[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_10 ? { [K_4 in keyof T_10]: T_10[K_4] } : never> & {
|
|
259
|
+
}, keyof ThunkApiConfig> extends (infer T_14) ? { [K in keyof T_14]: T_14[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_13) ? { [K_1 in keyof T_13]: T_13[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_12) ? { [K_2 in keyof T_12]: T_12[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_11) ? { [K_3 in keyof T_11]: T_11[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_10) ? { [K_4 in keyof T_10]: T_10[K_4]; } : never> & {
|
|
281
260
|
withTypes<ThunkApiConfig_5 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
282
261
|
dispatch: AppDispatch;
|
|
283
262
|
state: RootState;
|
|
@@ -287,7 +266,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
287
266
|
pendingMeta?: unknown;
|
|
288
267
|
fulfilledMeta?: unknown;
|
|
289
268
|
rejectedMeta?: unknown;
|
|
290
|
-
}, keyof ThunkApiConfig> extends infer T_20 ? { [K in keyof T_20]: T_20[K] } : never, keyof ThunkApiConfig_1> extends infer T_19 ? { [K_1 in keyof T_19]: T_19[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_18 ? { [K_2 in keyof T_18]: T_18[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_17 ? { [K_3 in keyof T_17]: T_17[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_16 ? { [K_4 in keyof T_16]: T_16[K_4] } : never, keyof ThunkApiConfig_5> extends infer T_15 ? { [K_5 in keyof T_15]: T_15[K_5] } : never> & {
|
|
269
|
+
}, keyof ThunkApiConfig> extends (infer T_20) ? { [K in keyof T_20]: T_20[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_19) ? { [K_1 in keyof T_19]: T_19[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_18) ? { [K_2 in keyof T_18]: T_18[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_17) ? { [K_3 in keyof T_17]: T_17[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_16) ? { [K_4 in keyof T_16]: T_16[K_4]; } : never, keyof ThunkApiConfig_5> extends (infer T_15) ? { [K_5 in keyof T_15]: T_15[K_5]; } : never> & {
|
|
291
270
|
withTypes<ThunkApiConfig_6 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_6 & Omit<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
292
271
|
dispatch: AppDispatch;
|
|
293
272
|
state: RootState;
|
|
@@ -297,7 +276,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
297
276
|
pendingMeta?: unknown;
|
|
298
277
|
fulfilledMeta?: unknown;
|
|
299
278
|
rejectedMeta?: unknown;
|
|
300
|
-
}, keyof ThunkApiConfig> extends infer T_27 ? { [K in keyof T_27]: T_27[K] } : never, keyof ThunkApiConfig_1> extends infer T_26 ? { [K_1 in keyof T_26]: T_26[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_25 ? { [K_2 in keyof T_25]: T_25[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_24 ? { [K_3 in keyof T_24]: T_24[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_23 ? { [K_4 in keyof T_23]: T_23[K_4] } : never, keyof ThunkApiConfig_5> extends infer T_22 ? { [K_5 in keyof T_22]: T_22[K_5] } : never, keyof ThunkApiConfig_6> extends infer T_21 ? { [K_6 in keyof T_21]: T_21[K_6] } : never> & {
|
|
279
|
+
}, keyof ThunkApiConfig> extends (infer T_27) ? { [K in keyof T_27]: T_27[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_26) ? { [K_1 in keyof T_26]: T_26[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_25) ? { [K_2 in keyof T_25]: T_25[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_24) ? { [K_3 in keyof T_24]: T_24[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_23) ? { [K_4 in keyof T_23]: T_23[K_4]; } : never, keyof ThunkApiConfig_5> extends (infer T_22) ? { [K_5 in keyof T_22]: T_22[K_5]; } : never, keyof ThunkApiConfig_6> extends (infer T_21) ? { [K_6 in keyof T_21]: T_21[K_6]; } : never> & {
|
|
301
280
|
withTypes<ThunkApiConfig_7 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_7 & Omit<ThunkApiConfig_6 & Omit<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
302
281
|
dispatch: AppDispatch;
|
|
303
282
|
state: RootState;
|
|
@@ -307,7 +286,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
307
286
|
pendingMeta?: unknown;
|
|
308
287
|
fulfilledMeta?: unknown;
|
|
309
288
|
rejectedMeta?: unknown;
|
|
310
|
-
}, keyof ThunkApiConfig> extends infer T_35 ? { [K in keyof T_35]: T_35[K] } : never, keyof ThunkApiConfig_1> extends infer T_34 ? { [K_1 in keyof T_34]: T_34[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_33 ? { [K_2 in keyof T_33]: T_33[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_32 ? { [K_3 in keyof T_32]: T_32[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_31 ? { [K_4 in keyof T_31]: T_31[K_4] } : never, keyof ThunkApiConfig_5> extends infer T_30 ? { [K_5 in keyof T_30]: T_30[K_5] } : never, keyof ThunkApiConfig_6> extends infer T_29 ? { [K_6 in keyof T_29]: T_29[K_6] } : never, keyof ThunkApiConfig_7> extends infer T_28 ? { [K_7 in keyof T_28]: T_28[K_7] } : never> & {
|
|
289
|
+
}, keyof ThunkApiConfig> extends (infer T_35) ? { [K in keyof T_35]: T_35[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_34) ? { [K_1 in keyof T_34]: T_34[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_33) ? { [K_2 in keyof T_33]: T_33[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_32) ? { [K_3 in keyof T_32]: T_32[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_31) ? { [K_4 in keyof T_31]: T_31[K_4]; } : never, keyof ThunkApiConfig_5> extends (infer T_30) ? { [K_5 in keyof T_30]: T_30[K_5]; } : never, keyof ThunkApiConfig_6> extends (infer T_29) ? { [K_6 in keyof T_29]: T_29[K_6]; } : never, keyof ThunkApiConfig_7> extends (infer T_28) ? { [K_7 in keyof T_28]: T_28[K_7]; } : never> & {
|
|
311
290
|
withTypes<ThunkApiConfig_8 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_8 & Omit<ThunkApiConfig_7 & Omit<ThunkApiConfig_6 & Omit<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
312
291
|
dispatch: AppDispatch;
|
|
313
292
|
state: RootState;
|
|
@@ -317,7 +296,7 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
317
296
|
pendingMeta?: unknown;
|
|
318
297
|
fulfilledMeta?: unknown;
|
|
319
298
|
rejectedMeta?: unknown;
|
|
320
|
-
}, keyof ThunkApiConfig> extends infer T_44 ? { [K in keyof T_44]: T_44[K] } : never, keyof ThunkApiConfig_1> extends infer T_43 ? { [K_1 in keyof T_43]: T_43[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_42 ? { [K_2 in keyof T_42]: T_42[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_41 ? { [K_3 in keyof T_41]: T_41[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_40 ? { [K_4 in keyof T_40]: T_40[K_4] } : never, keyof ThunkApiConfig_5> extends infer T_39 ? { [K_5 in keyof T_39]: T_39[K_5] } : never, keyof ThunkApiConfig_6> extends infer T_38 ? { [K_6 in keyof T_38]: T_38[K_6] } : never, keyof ThunkApiConfig_7> extends infer T_37 ? { [K_7 in keyof T_37]: T_37[K_7] } : never, keyof ThunkApiConfig_8> extends infer T_36 ? { [K_8 in keyof T_36]: T_36[K_8] } : never> & {
|
|
299
|
+
}, keyof ThunkApiConfig> extends (infer T_44) ? { [K in keyof T_44]: T_44[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_43) ? { [K_1 in keyof T_43]: T_43[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_42) ? { [K_2 in keyof T_42]: T_42[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_41) ? { [K_3 in keyof T_41]: T_41[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_40) ? { [K_4 in keyof T_40]: T_40[K_4]; } : never, keyof ThunkApiConfig_5> extends (infer T_39) ? { [K_5 in keyof T_39]: T_39[K_5]; } : never, keyof ThunkApiConfig_6> extends (infer T_38) ? { [K_6 in keyof T_38]: T_38[K_6]; } : never, keyof ThunkApiConfig_7> extends (infer T_37) ? { [K_7 in keyof T_37]: T_37[K_7]; } : never, keyof ThunkApiConfig_8> extends (infer T_36) ? { [K_8 in keyof T_36]: T_36[K_8]; } : never> & {
|
|
321
300
|
withTypes<ThunkApiConfig_9 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_9 & Omit<ThunkApiConfig_8 & Omit<ThunkApiConfig_7 & Omit<ThunkApiConfig_6 & Omit<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit<{
|
|
322
301
|
dispatch: AppDispatch;
|
|
323
302
|
state: RootState;
|
|
@@ -327,8 +306,8 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
327
306
|
pendingMeta?: unknown;
|
|
328
307
|
fulfilledMeta?: unknown;
|
|
329
308
|
rejectedMeta?: unknown;
|
|
330
|
-
}, keyof ThunkApiConfig> extends infer T_54 ? { [K in keyof T_54]: T_54[K] } : never, keyof ThunkApiConfig_1> extends infer T_53 ? { [K_1 in keyof T_53]: T_53[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_52 ? { [K_2 in keyof T_52]: T_52[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_51 ? { [K_3 in keyof T_51]: T_51[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_50 ? { [K_4 in keyof T_50]: T_50[K_4] } : never, keyof ThunkApiConfig_5> extends infer T_49 ? { [K_5 in keyof T_49]: T_49[K_5] } : never, keyof ThunkApiConfig_6> extends infer T_48 ? { [K_6 in keyof T_48]: T_48[K_6] } : never, keyof ThunkApiConfig_7> extends infer T_47 ? { [K_7 in keyof T_47]: T_47[K_7] } : never, keyof ThunkApiConfig_8> extends infer T_46 ? { [K_8 in keyof T_46]: T_46[K_8] } : never, keyof ThunkApiConfig_9> extends infer T_45 ? { [K_9 in keyof T_45]: T_45[K_9] } : never> & {
|
|
331
|
-
withTypes<ThunkApiConfig_10 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_10 & Omit<ThunkApiConfig_9 & Omit<ThunkApiConfig_8 & Omit<ThunkApiConfig_7 & Omit<ThunkApiConfig_6 & Omit<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit< /*elided*/any, keyof ThunkApiConfig> extends infer T_65 ? { [K in keyof T_65]: T_65[K] } : never, keyof ThunkApiConfig_1> extends infer T_64 ? { [K_1 in keyof T_64]: T_64[K_1] } : never, keyof ThunkApiConfig_2> extends infer T_63 ? { [K_2 in keyof T_63]: T_63[K_2] } : never, keyof ThunkApiConfig_3> extends infer T_62 ? { [K_3 in keyof T_62]: T_62[K_3] } : never, keyof ThunkApiConfig_4> extends infer T_61 ? { [K_4 in keyof T_61]: T_61[K_4] } : never, keyof ThunkApiConfig_5> extends infer T_60 ? { [K_5 in keyof T_60]: T_60[K_5] } : never, keyof ThunkApiConfig_6> extends infer T_59 ? { [K_6 in keyof T_59]: T_59[K_6] } : never, keyof ThunkApiConfig_7> extends infer T_58 ? { [K_7 in keyof T_58]: T_58[K_7] } : never, keyof ThunkApiConfig_8> extends infer T_57 ? { [K_8 in keyof T_57]: T_57[K_8] } : never, keyof ThunkApiConfig_9> extends infer T_56 ? { [K_9 in keyof T_56]: T_56[K_9] } : never, keyof ThunkApiConfig_10> extends infer T_55 ? { [K_10 in keyof T_55]: T_55[K_10] } : never> & /*elided*/any;
|
|
309
|
+
}, keyof ThunkApiConfig> extends (infer T_54) ? { [K in keyof T_54]: T_54[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_53) ? { [K_1 in keyof T_53]: T_53[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_52) ? { [K_2 in keyof T_52]: T_52[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_51) ? { [K_3 in keyof T_51]: T_51[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_50) ? { [K_4 in keyof T_50]: T_50[K_4]; } : never, keyof ThunkApiConfig_5> extends (infer T_49) ? { [K_5 in keyof T_49]: T_49[K_5]; } : never, keyof ThunkApiConfig_6> extends (infer T_48) ? { [K_6 in keyof T_48]: T_48[K_6]; } : never, keyof ThunkApiConfig_7> extends (infer T_47) ? { [K_7 in keyof T_47]: T_47[K_7]; } : never, keyof ThunkApiConfig_8> extends (infer T_46) ? { [K_8 in keyof T_46]: T_46[K_8]; } : never, keyof ThunkApiConfig_9> extends (infer T_45) ? { [K_9 in keyof T_45]: T_45[K_9]; } : never> & {
|
|
310
|
+
withTypes<ThunkApiConfig_10 extends import("@reduxjs/toolkit").AsyncThunkConfig>(): import("@reduxjs/toolkit").CreateAsyncThunkFunction<ThunkApiConfig_10 & Omit<ThunkApiConfig_9 & Omit<ThunkApiConfig_8 & Omit<ThunkApiConfig_7 & Omit<ThunkApiConfig_6 & Omit<ThunkApiConfig_5 & Omit<ThunkApiConfig_4 & Omit<ThunkApiConfig_3 & Omit<ThunkApiConfig_2 & Omit<ThunkApiConfig_1 & Omit<ThunkApiConfig & Omit< /*elided*/ any, keyof ThunkApiConfig> extends (infer T_65) ? { [K in keyof T_65]: T_65[K]; } : never, keyof ThunkApiConfig_1> extends (infer T_64) ? { [K_1 in keyof T_64]: T_64[K_1]; } : never, keyof ThunkApiConfig_2> extends (infer T_63) ? { [K_2 in keyof T_63]: T_63[K_2]; } : never, keyof ThunkApiConfig_3> extends (infer T_62) ? { [K_3 in keyof T_62]: T_62[K_3]; } : never, keyof ThunkApiConfig_4> extends (infer T_61) ? { [K_4 in keyof T_61]: T_61[K_4]; } : never, keyof ThunkApiConfig_5> extends (infer T_60) ? { [K_5 in keyof T_60]: T_60[K_5]; } : never, keyof ThunkApiConfig_6> extends (infer T_59) ? { [K_6 in keyof T_59]: T_59[K_6]; } : never, keyof ThunkApiConfig_7> extends (infer T_58) ? { [K_7 in keyof T_58]: T_58[K_7]; } : never, keyof ThunkApiConfig_8> extends (infer T_57) ? { [K_8 in keyof T_57]: T_57[K_8]; } : never, keyof ThunkApiConfig_9> extends (infer T_56) ? { [K_9 in keyof T_56]: T_56[K_9]; } : never, keyof ThunkApiConfig_10> extends (infer T_55) ? { [K_10 in keyof T_55]: T_55[K_10]; } : never> & /*elided*/ any;
|
|
332
311
|
};
|
|
333
312
|
};
|
|
334
313
|
};
|
|
@@ -342,4 +321,4 @@ declare const createAppAsyncThunk: import("@reduxjs/toolkit").CreateAsyncThunkFu
|
|
|
342
321
|
};
|
|
343
322
|
//#endregion
|
|
344
323
|
export { mapTermsToFilters as A, getDeploymentState as C, listItemMapper as D, isDarkMode as E, statCollector as F, stringToBoolean as I, stripOrchestratorManifestPrefix as L, mergePermissions as M, parseSubscriptionPreview as N, mapDeviceAttributes as O, progress as P, stripUndefined as R, getAttributeScopeLabel as S, groupDeploymentStats as T, dispatchDelayed as _, commonErrorHandler as a, filtersFilter as b, sessionReducer as c, useAppSelector as d, DeploymentStats as f, convertToBackendSPLimits as g, convertDeviceListStateToFilters as h, commonErrorFallback as i, mapUserRolesToUiPermissions as j, mapFiltersToTerms as k, store as l, FilterTerm as m, MenderEnvironment as n, createAppAsyncThunk as o, ErrorWithResponse as p, RootState as r, getConfiguredStore as s, AppDispatch as t, useAppDispatch as u, ensureVersionString as v, groupDeploymentDevicesStats as w, generateDeploymentGroupDetails as x, extractErrorMessage as y };
|
|
345
|
-
//# sourceMappingURL=store-
|
|
324
|
+
//# sourceMappingURL=store-CUUm1GTI.d.cts.map
|