Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Refactor/corel nicer org limits #8719

Draft
wants to merge 38 commits into
base: next
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
cdbba4c
feat(releases): initial support for stubbed org level release limits
jordanl17 Feb 17, 2025
53e38c2
refactor: removing datasetLimit from cache and just using cacheValue
jordanl17 Feb 17, 2025
d3c8a78
fix: caching when activeReleases is at the org level limit too
jordanl17 Feb 17, 2025
8d53373
feat(releases): initial support for stubbed org level release limits
jordanl17 Feb 17, 2025
010ec5f
chore: types
jordanl17 Feb 17, 2025
2e5e89f
refactor: splitting separate stores for limits and count
jordanl17 Feb 17, 2025
2b8b30c
refactor: further splitting of the stores
jordanl17 Feb 17, 2025
113bf18
refactor: minor renaming
jordanl17 Feb 17, 2025
92b4796
refactor: useOrgActiveReleaseCount only stores the count, nothing else
jordanl17 Feb 17, 2025
9436e94
fix: using a shared network request in guard
jordanl17 Feb 17, 2025
2f5265d
refactor: tidy and reinstating useObservable
jordanl17 Feb 17, 2025
ea698cf
refactor: all working; minor refactor to tidy
jordanl17 Feb 18, 2025
deb03cf
refactor: updated useOrgActiveReleaseCount using a createStore
jordanl17 Feb 18, 2025
91e5405
refactor: useReleaseLimits uses a createStore
jordanl17 Feb 18, 2025
6af633c
refactor: using the count of org active releases from the store direc…
jordanl17 Feb 18, 2025
9694ffc
feat: storing fetching state and error state for useReleaseLimits
jordanl17 Feb 18, 2025
78f8f37
refactor: updating useReleaseLimits to use single subject for fetch s…
jordanl17 Feb 18, 2025
9409d93
refactor: renaming
jordanl17 Feb 18, 2025
f8f7453
refactor: to using more reactivity
jordanl17 Feb 18, 2025
b46b722
refactor: tidy to logic layout in ReleasesUpsellProvider
jordanl17 Feb 18, 2025
7a4ce41
fix: correcting issue that meant guard would always call cb
jordanl17 Feb 18, 2025
cf05702
fix: resolving type errors
jordanl17 Feb 18, 2025
bbcdde7
fix: resolving more TS issues
jordanl17 Feb 19, 2025
cdf4808
fix: resolving onLimitReached cb to not exec if dryRun
jordanl17 Feb 19, 2025
a094e3d
chore: toggle stub or real API
jordanl17 Feb 19, 2025
1ffffd6
feat: using actual data response from API
jordanl17 Feb 19, 2025
bcc45fe
fix: handling error from backend that still has data
jordanl17 Feb 19, 2025
c03e227
feat: using the defaultActiveLimit to determine releases+
jordanl17 Feb 19, 2025
09f66ec
refactor: minor clarification on comments; reverting changes to inter…
jordanl17 Feb 20, 2025
440c4b0
refactor: reusing single type from fetchReleaseLimits; handling 404 e…
jordanl17 Feb 20, 2025
41ee61b
fix: Revert button is disabled whilst determining release limits
jordanl17 Feb 20, 2025
f7404fe
chore: clarifying vX usage for `new-content-release-allowed`
jordanl17 Feb 20, 2025
41e308a
fix: case where interpolation on Upsell should work for zero values
jordanl17 Feb 20, 2025
00357f0
fix: studios without content releases feature enabled don't do permis…
jordanl17 Feb 20, 2025
5d8bbdd
test: studios without content releases feature enabled don't do permi…
jordanl17 Feb 20, 2025
72ab555
refactor: trying to dedupe fetchReleaseLimits calls
jordanl17 Feb 20, 2025
3b2a4eb
wip: share fetcher observable in order to deduplicate requests
juice49 Feb 20, 2025
e58b297
fix: removed shareReplay from fetch limits and using vX
jordanl17 Feb 21, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
/* eslint-disable no-console */
import {useTelemetry} from '@sanity/telemetry/react'
import {template} from 'lodash'
import {useCallback, useEffect, useMemo, useState} from 'react'
import {firstValueFrom} from 'rxjs'
import {ReleasesUpsellContext} from 'sanity/_singletons'

import {useClient, useFeatureEnabled, useProjectId} from '../../../hooks'
Expand All @@ -14,6 +16,8 @@ import {TEMPLATE_OPTIONS} from '../../../studio/upsell/constants'
import {type UpsellData} from '../../../studio/upsell/types'
import {UpsellDialog} from '../../../studio/upsell/UpsellDialog'
import {useActiveReleases} from '../../store/useActiveReleases'
import {useOrgActiveReleaseCount} from '../../store/useOrgActiveReleaseCount'
import {useReleaseLimits} from '../../store/useReleaseLimits'
import {type ReleasesUpsellContextValue} from './types'

class StudioReleaseLimitExceededError extends Error {
Expand Down Expand Up @@ -43,26 +47,22 @@ export function ReleasesUpsellProvider(props: {children: React.ReactNode}) {
const projectId = useProjectId()
const telemetry = useTelemetry()
const client = useClient({apiVersion: API_VERSION})
const [releaseLimit, setReleaseLimit] = useState<number | undefined>(undefined)
const {data: activeReleases} = useActiveReleases()
const {enabled: isReleasesFeatureEnabled} = useFeatureEnabled('contentReleases')

const mode = useMemo(() => {
/**
* upsell if:
* plan is free, ie releases is not feature enabled
* there is a limit and the limit is reached or exceeded
*/
const isAtReleaseLimit =
!isReleasesFeatureEnabled || (releaseLimit && (activeReleases?.length || 0) >= releaseLimit)
if (isAtReleaseLimit && upsellData) {
if (!isReleasesFeatureEnabled && upsellData) {
return 'upsell'
}
if (isAtReleaseLimit && !upsellData) {
if (isReleasesFeatureEnabled && !upsellData) {
return 'disabled'
}
return 'default'
}, [activeReleases?.length, isReleasesFeatureEnabled, releaseLimit, upsellData])
}, [isReleasesFeatureEnabled, upsellData])

const telemetryLogs = useMemo(
(): ReleasesUpsellContextValue['telemetryLogs'] => ({
Expand Down Expand Up @@ -146,40 +146,93 @@ export function ReleasesUpsellProvider(props: {children: React.ReactNode}) {
}
}, [client, projectId])

const handleOpenDialog = useCallback(() => {
setUpsellDialogOpen(true)
const [releaseCount, setReleaseCount] = useState<number | null>(null)

telemetry.log(UpsellDialogViewed, {
feature: FEATURE,
type: 'modal',
source: 'navbar',
})
}, [telemetry])
const handleOpenDialog = useCallback(
(orgActiveReleaseCount?: number) => {
setUpsellDialogOpen(true)
if (orgActiveReleaseCount !== undefined) {
setReleaseCount(orgActiveReleaseCount)
}

telemetry.log(UpsellDialogViewed, {
feature: FEATURE,
type: 'modal',
source: 'navbar',
})
},
[telemetry],
)

const limitsClient = client.withConfig({apiVersion: 'vX'}).observable
const {releaseLimits$} = useReleaseLimits(limitsClient)
const {orgActiveReleaseCount$} = useOrgActiveReleaseCount(limitsClient)

const guardWithReleaseLimitUpsell = useCallback(
(cb: () => void, throwError: boolean = false) => {
if (mode === 'default') {
return cb()
async (cb: () => void, throwError: boolean = false) => {
const doUpsell: (count?: number) => false = (count) => {
handleOpenDialog(count)
if (throwError) {
throw new StudioReleaseLimitExceededError()
}
return false
}

handleOpenDialog()
if (throwError) {
throw new StudioReleaseLimitExceededError()
if (mode === 'upsell') return doUpsell()

const fetchLimitsCount = async () => {
try {
console.log('Guard called, checking caches...')
// if either fails then catch the error
return await Promise.all([
firstValueFrom(orgActiveReleaseCount$),
firstValueFrom(releaseLimits$),
])
} catch (e) {
console.error('Error fetching release limits and org count for upsell:', e)

return null
}
}
return false

const result = await fetchLimitsCount()

// silently fail and allow pass through guard
if (result === null) return cb()

const [orgActiveReleaseCount, releaseLimits] = result

if (releaseLimits === null || orgActiveReleaseCount === null) return cb()

const {orgActiveReleaseLimit, datasetReleaseLimit} = releaseLimits

// orgActiveReleaseCount might be missing due to internal server error
// allow pass through guard in that case
if (orgActiveReleaseCount === null) return cb()

const activeReleasesCount = activeReleases?.length || 0

const isCurrentDatasetAtAboveDatasetLimit = activeReleasesCount >= datasetReleaseLimit
const isCurrentDatasetAtAboveOrgLimit =
orgActiveReleaseLimit !== null && activeReleasesCount >= orgActiveReleaseLimit
const isOrgAtAboveOrgLimit =
orgActiveReleaseLimit !== null && orgActiveReleaseCount >= orgActiveReleaseLimit

const shouldShowDialog =
isCurrentDatasetAtAboveDatasetLimit ||
isCurrentDatasetAtAboveOrgLimit ||
isOrgAtAboveOrgLimit

if (shouldShowDialog) return doUpsell(orgActiveReleaseCount)

return cb()
},
[handleOpenDialog, mode],
[mode, handleOpenDialog, orgActiveReleaseCount$, releaseLimits$, activeReleases?.length],
)

const onReleaseLimitReached = useCallback(
(limit: number, suppressDialogOpening: boolean = false) => {
setReleaseLimit(limit)

if (!suppressDialogOpening && (activeReleases?.length || 0) >= limit) {
handleOpenDialog()
}
},
[activeReleases?.length, handleOpenDialog],
(limit: number) => handleOpenDialog(limit),
[handleOpenDialog],
)

const ctxValue = useMemo<ReleasesUpsellContextValue>(
Expand All @@ -193,7 +246,7 @@ export function ReleasesUpsellProvider(props: {children: React.ReactNode}) {
[mode, upsellDialogOpen, guardWithReleaseLimitUpsell, onReleaseLimitReached, telemetryLogs],
)

const interpolation = releaseLimit ? {releaseLimit} : undefined
const interpolation = releaseCount === null ? undefined : {releaseLimit: releaseCount}

return (
<ReleasesUpsellContext.Provider value={ctxValue}>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
import {type ClientError, type ObservableSanityClient} from '@sanity/client'
import {catchError, map, type Observable, of, share} from 'rxjs'

export interface ReleaseLimits {
orgActiveReleaseCount: number
defaultOrgActiveReleaseLimit: number
datasetReleaseLimit: number
// internal server error has no fallback number - it uses null
orgActiveReleaseLimit: number | null
}

interface ReleaseLimitsResponse {
data: ReleaseLimits
}

/**
* @internal
* fetches subscriptions for this project
*/
export function fetchReleaseLimits(clientOb: ObservableSanityClient): Observable<ReleaseLimits> {
const {projectId} = clientOb.config()

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 22)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / Test (ubuntu-latest-m / node 18)

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should allow for navigating back to releases overview

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

Check failure on line 21 in packages/sanity/src/core/releases/contexts/upsell/fetchReleaseLimits.ts

View workflow job for this annotation

GitHub Actions / report-coverage

src/core/releases/tool/detail/__tests__/ReleaseDetail.test.tsx > after releases have loaded > with published release > should show the release title

TypeError: clientOb.config is not a function ❯ fetchReleaseLimits src/core/releases/contexts/upsell/fetchReleaseLimits.ts:21:32 ❯ createReleaseLimitsStore src/core/releases/store/useReleaseLimits.ts:15:26 ❯ useReleaseLimits src/core/releases/store/useReleaseLimits.ts:54:13 ❯ useIsReleasesPlus src/core/releases/hooks/useIsReleasesPlus.ts:12:28 ❯ ReleaseRevertButton src/core/releases/tool/components/releaseCTAButtons/ReleaseRevertButton/ReleaseRevertButton.tsx:232:26 ❯ renderWithHooks ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:15486:18 ❯ mountIndeterminateComponent ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:20103:13 ❯ beginWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:21626:16 ❯ beginWork$1 ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:27465:14 ❯ performUnitOfWork ../../node_modules/.pnpm/[email protected][email protected]/node_modules/react-dom/cjs/react-dom.development.js:26599:12

// This endpoint is prone to optimisation and further work
// it will never live within a versions API and will always be on vX
// until it goes away - there is graceful handling in `catchError`
// for when this endpoint is no longer available and limits are fetched
// some other way

return clientOb
.withConfig({apiVersion: 'vX'})
.request<ReleaseLimitsResponse>({
uri: `projects/${projectId}/new-content-release-allowed`,
// tag: `new-${new Date().getTime()}`,
tag: 'new-content-release-allowed',
})
.pipe(
share(),
catchError((error: ClientError) => {
console.error(error)

if (typeof error.response.body !== 'string' && 'data' in error.response.body) {
// body will still contain the limits and current count (if available)
// so still want to return these and just silently log the error
return of(error.response.body as ReleaseLimitsResponse)
}

// for internal server errors, or as a fallback
// propagate up the error
throw error
}),
map(({data}) => data),
)
}
4 changes: 2 additions & 2 deletions packages/sanity/src/core/releases/contexts/upsell/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ export interface ReleasesUpsellContextValue {
*/
mode: 'upsell' | 'default' | 'disabled'
upsellDialogOpen: boolean
guardWithReleaseLimitUpsell: (callback: () => void, throwError?: boolean) => false | void
onReleaseLimitReached: (limit: number, suppressDialogOpening: boolean) => void
guardWithReleaseLimitUpsell: (callback: () => void, throwError?: boolean) => Promise<false | void>
onReleaseLimitReached: (limit: number) => void
telemetryLogs: {
dialogSecondaryClicked: () => void
dialogPrimaryClicked: () => void
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ const FALLBACK_CONTEXT_VALUE = {
upsellDialogOpen: false,
mode: 'default' as const,
onReleaseLimitReached: () => null,
guardWithReleaseLimitUpsell: () => undefined,
guardWithReleaseLimitUpsell: async () => undefined,
telemetryLogs: {
dialogSecondaryClicked: () => null,
dialogPrimaryClicked: () => null,
Expand Down
21 changes: 21 additions & 0 deletions packages/sanity/src/core/releases/hooks/useIsReleasesPlus.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
import {useObservable} from 'react-rx'

import {useClient} from '../../hooks/useClient'
import {useReleaseLimits} from '../store/useReleaseLimits'

/**
* @internal
* @returns `boolean` Whether the current org is on a Releases+ plan
*/
export const useIsReleasesPlus = (): boolean => {
const client = useClient().observable
const {releaseLimits$} = useReleaseLimits(client)

const releaseLimit = useObservable(releaseLimits$, null)

const {orgActiveReleaseLimit, defaultOrgActiveReleaseLimit = 0} = releaseLimit || {}

// presume not releases+ if null releaseLimit
// (because of internal server error or network error)
return !!orgActiveReleaseLimit && orgActiveReleaseLimit >= defaultOrgActiveReleaseLimit
}
Original file line number Diff line number Diff line change
@@ -1,25 +1,28 @@
import {beforeEach, describe, expect, it, vi} from 'vitest'
import {describe, expect, it, vi} from 'vitest'

import {createReleasePermissionsStore} from '../createReleasePermissionsStore'
import {type useReleasePermissionsValue} from '../useReleasePermissions'

const createStore = () => createReleasePermissionsStore()

describe('useReleasePermissions', () => {
let store: useReleasePermissionsValue
describe('when content release feature is enabled', () => {
it('should return true when action succeeds', async () => {
const mockAction = vi.fn().mockResolvedValueOnce(undefined)
const result = await createReleasePermissionsStore(true).checkWithPermissionGuard(mockAction)

beforeEach(() => {
store = createStore()
expect(result).toBe(true)
expect(mockAction).toHaveBeenCalledWith({
dryRun: true,
skipCrossDatasetReferenceValidation: true,
})
})
})

it('should return true when action succeeds', async () => {
const mockAction = vi.fn().mockResolvedValueOnce(undefined)
const result = await store.checkWithPermissionGuard(mockAction)
describe('when content release feature is disabled', () => {
it('should allow permissions', async () => {
const mockAction = vi.fn()
const result = await createReleasePermissionsStore(false).checkWithPermissionGuard(mockAction)

expect(result).toBe(true)
expect(mockAction).toHaveBeenCalledWith({
dryRun: true,
skipCrossDatasetReferenceValidation: true,
expect(result).toBe(true)
expect(mockAction).not.toHaveBeenCalled()
})
})
})
Original file line number Diff line number Diff line change
Expand Up @@ -355,9 +355,11 @@ export function createRequestAction(
},
})
} catch (e) {
if (isReleaseLimitError(e)) {
// if dryRunning then essentially this is a silent request
// so don't want to create disruptive upsell because of limit
if (!options?.dryRun && isReleaseLimitError(e)) {
// free accounts do not return limit, 0 is implied
onReleaseLimitReached(e.details.limit || 0, !!options?.dryRun)
onReleaseLimitReached(e.details.limit || 0)
}

throw e
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,9 @@ export const isReleasePermissionError = (error: unknown): error is ReleasePermis
*
* @internal
*/
export function createReleasePermissionsStore(): useReleasePermissionsValue {
export function createReleasePermissionsStore(
isContentReleasesEnabled: boolean,
): useReleasePermissionsValue {
let permissions: {[key: string]: boolean} = {}

/**
Expand All @@ -36,6 +38,14 @@ export function createReleasePermissionsStore(): useReleasePermissionsValue {
action: T,
...args: Parameters<T>
): Promise<boolean> => {
if (!isContentReleasesEnabled) {
/**
* When content releases feature flag is disabled
* assume allowed permissions to provide upsell
*/
return true
}

if (permissions[action.name] === undefined) {
try {
await action(...args, {
Expand Down
Loading
Loading