Skip to content

Commit

Permalink
chore(release): Test and deploy to Production v8.24.0 (#10801)
Browse files Browse the repository at this point in the history
Signed-off-by: Matt Krick <[email protected]>
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Matt Krick <[email protected]>
Co-authored-by: parabol-release-bot[bot] <150284312+parabol-release-bot[bot]@users.noreply.github.com>
Co-authored-by: Rafa <[email protected]>
Co-authored-by: Nick O'Ferrall <[email protected]>
Co-authored-by: Terry Acker <[email protected]>
Co-authored-by: Bruce Tian <[email protected]>
Co-authored-by: Georg Bremer <[email protected]>
Co-authored-by: snyk-bot <[email protected]>
Co-authored-by: GitHub Action <[email protected]>
Co-authored-by: Sven Seeberg <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Smruti Ranjan Badatya <[email protected]>
Co-authored-by: Jordan Husney <[email protected]>
Co-authored-by: Smruti Ranjan Badatya <[email protected]>
Co-authored-by: Hemant Kumar Singh <[email protected]>
Co-authored-by: github-actions <[email protected]>
  • Loading branch information
17 people authored Feb 6, 2025
1 parent 707525d commit 1279061
Show file tree
Hide file tree
Showing 74 changed files with 868 additions and 418 deletions.
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "8.23.8"
".": "8.24.0"
}
19 changes: 19 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,25 @@ This project adheres to [Semantic Versioning](http://semver.org/).

This CHANGELOG follows conventions [outlined here](http://keepachangelog.com/).

## [8.24.0](https://github.com/ParabolInc/parabol/compare/v8.23.8...v8.24.0) (2025-02-05)


### Added

* **Mattermost Plugin:** TipTap Editor for Task and Reflection ([#10796](https://github.com/ParabolInc/parabol/issues/10796)) ([9e4a14e](https://github.com/ParabolInc/parabol/commit/9e4a14e54726af7d156593128d9a682ad390a627))
* release standups ai to all users ([#10724](https://github.com/ParabolInc/parabol/issues/10724)) ([260daf3](https://github.com/ParabolInc/parabol/commit/260daf3141cf67809b03fe9a764bc06e6f3b0700))


### Fixed

* update the logic to match the definition of an active team with Data Sanctum ([#10790](https://github.com/ParabolInc/parabol/issues/10790)) ([9c1df05](https://github.com/ParabolInc/parabol/commit/9c1df054457e894cde5bbb24fc01dba3d27b2030))


### Changed

* add extra logging to gql executor timeouts ([#10795](https://github.com/ParabolInc/parabol/issues/10795)) ([7ff31b1](https://github.com/ParabolInc/parabol/commit/7ff31b156ba0ebb9c7308dea51a77c34ae7f748c))
* Refactor tiptap events ([#10800](https://github.com/ParabolInc/parabol/issues/10800)) ([4383430](https://github.com/ParabolInc/parabol/commit/4383430ac97238dfa9a58a5c042161908f370eff))

## [8.23.8](https://github.com/ParabolInc/parabol/compare/v8.23.7...v8.23.8) (2025-02-04)


Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"description": "An open-source app for building smarter, more agile teams.",
"author": "Parabol Inc. <[email protected]> (http://github.com/ParabolInc)",
"license": "AGPL-3.0",
"version": "8.23.8",
"version": "8.24.0",
"repository": {
"type": "git",
"url": "https://github.com/ParabolInc/parabol"
Expand Down
4 changes: 2 additions & 2 deletions packages/chronos/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "chronos",
"version": "8.23.8",
"version": "8.24.0",
"description": "A cron job scheduler",
"author": "Matt Krick <[email protected]>",
"homepage": "https://github.com/ParabolInc/parabol/tree/master/packages/chronos#readme",
Expand All @@ -25,6 +25,6 @@
},
"dependencies": {
"cron": "^2.3.1",
"parabol-server": "8.23.8"
"parabol-server": "8.24.0"
}
}
4 changes: 1 addition & 3 deletions packages/client/components/DiscussionThreadInput.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ const DiscussionThreadInput = (props: Props) => {
if (submitting || !editor || editor.isEmpty) return
addComment(JSON.stringify(editor.getJSON()))
})
const {editor, setLinkState, linkState} = useTipTapCommentEditor(initialContent, {
const {editor} = useTipTapCommentEditor(initialContent, {
readOnly: !allowComments,
atmosphere,
teamId,
Expand Down Expand Up @@ -216,8 +216,6 @@ const DiscussionThreadInput = (props: Props) => {
<TipTapEditor
className='flex max-h-80 min-h-0 grow overflow-auto px-0 leading-4'
editor={editor}
linkState={linkState}
setLinkState={setLinkState}
/>
<SendCommentButton commentSubmitState={commentSubmitState} onSubmit={onSubmit} />
</div>
Expand Down
4 changes: 1 addition & 3 deletions packages/client/components/NullableTask/NullableTask.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ const NullableTask = (props: Props) => {
const atmosphere = useAtmosphere()
const isArchived = isTaskArchived(tags)
const readOnly = isTempId(taskId) || isArchived || !!isDraggingOver || isIntegration
const {editor, linkState, setLinkState} = useTipTapTaskEditor(content, {
const {editor} = useTipTapTaskEditor(content, {
atmosphere,
teamId,
readOnly
Expand All @@ -70,8 +70,6 @@ const NullableTask = (props: Props) => {
area={area}
className={className}
editor={editor}
linkState={linkState}
setLinkState={setLinkState}
isDraggingOver={isDraggingOver}
isAgenda={isAgenda}
task={task}
Expand Down
9 changes: 2 additions & 7 deletions packages/client/components/ParabolScopingSearchResultItem.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ const ParabolScopingSearchResultItem = (props: Props) => {
const atmosphere = useAtmosphere()
const {onCompleted, onError, submitMutation, submitting} = useMutationProps()
const isEditingThisItem = !plaintextContent
const {editor, linkState, setLinkState} = useTipTapTaskEditor(content, {
const {editor} = useTipTapTaskEditor(content, {
atmosphere,
teamId,
readOnly: !isEditingThisItem
Expand Down Expand Up @@ -140,12 +140,7 @@ const ParabolScopingSearchResultItem = (props: Props) => {
addTaskChild('root')
}}
>
<TipTapEditor
editor={editor}
linkState={linkState}
setLinkState={setLinkState}
useLinkEditor={() => useTaskChild('editor-link-changer')}
/>
<TipTapEditor editor={editor} useLinkEditor={() => useTaskChild('editor-link-changer')} />
</Task>
</Item>
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ const PokerEstimateHeaderCardParabol = (props: Props) => {
}
UpdateTaskMutation(atmosphere, {updatedTask}, {})
})
const {editor, linkState, setLinkState} = useTipTapTaskEditor(content, {
const {editor} = useTipTapTaskEditor(content, {
atmosphere,
teamId,
onBlur
Expand All @@ -108,8 +108,6 @@ const PokerEstimateHeaderCardParabol = (props: Props) => {
<EditorWrapper isExpanded={isExpanded}>
<TipTapEditor
editor={editor}
linkState={linkState}
setLinkState={setLinkState}
useLinkEditor={() => useTaskChild('editor-link-changer')}
/>
</EditorWrapper>
Expand Down
4 changes: 1 addition & 3 deletions packages/client/components/ReflectionCard/ReflectionCard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ const ReflectionCard = (props: Props) => {
phases,
isSpotlightSource
)
const {editor, linkState, setLinkState} = useTipTapReflectionEditor(content, {
const {editor} = useTipTapReflectionEditor(content, {
atmosphere,
teamId,
readOnly: !!readOnly
Expand Down Expand Up @@ -332,8 +332,6 @@ const ReflectionCard = (props: Props) => {
readOnly ? (phaseType === 'discuss' ? 'select-text' : 'select-none') : undefined
)}
editor={editor}
linkState={linkState}
setLinkState={setLinkState}
onFocus={handleEditorFocus}
onBlur={handleEditorBlur}
/>
Expand Down
31 changes: 19 additions & 12 deletions packages/client/components/ReflectionGroup/RemoteReflection.tsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import {keyframes} from '@emotion/core'
import styled from '@emotion/styled'
import {generateHTML} from '@tiptap/core'
import graphql from 'babel-plugin-relay/macro'
import * as React from 'react'
import {RefObject, useEffect, useMemo, useRef} from 'react'
import {RefObject, useEffect, useMemo, useRef, useState} from 'react'
import {commitLocalUpdate, useFragment} from 'react-relay'
import useSpotlightResults from '~/hooks/useSpotlightResults'
import {RemoteReflection_meeting$key} from '../../__generated__/RemoteReflection_meeting.graphql'
Expand All @@ -11,17 +11,16 @@ import {
RemoteReflection_reflection$key
} from '../../__generated__/RemoteReflection_reflection.graphql'
import useAtmosphere from '../../hooks/useAtmosphere'
import {useTipTapReflectionEditor} from '../../hooks/useTipTapReflectionEditor'
import {serverTipTapExtensions} from '../../shared/tiptap/serverTipTapExtensions'
import {Elevation} from '../../styles/elevation'
import {BezierCurve, DragAttribute, ElementWidth, Times, ZIndex} from '../../types/constEnums'
import {DeepNonNullable} from '../../types/generics'
import {cn} from '../../ui/cn'
import {VOTE} from '../../utils/constants'
import {getMinTop} from '../../utils/retroGroup/updateClonePosition'
import {TipTapEditor} from '../promptResponse/TipTapEditor'
import ReflectionCardAuthor from '../ReflectionCard/ReflectionCardAuthor'
import ReflectionCardRoot from '../ReflectionCard/ReflectionCardRoot'
import getBBox from '../RetroReflectPhase/getBBox'
import HTMLReflection from '../RetroReflectPhase/HTMLReflection'
import UserDraggingHeader, {RemoteReflectionArrow} from '../UserDraggingHeader'

const circleAnimation = (transform?: string) => keyframes`
Expand Down Expand Up @@ -214,7 +213,7 @@ const RemoteReflection = (props: Props) => {
RemoteReflection_reflection$data['remoteDrag']
>
const ref = useRef<HTMLDivElement>(null)
const {editor} = useTipTapReflectionEditor(content, {readOnly: true})
const [html] = useState(() => generateHTML(JSON.parse(content), serverTipTapExtensions))
const timeoutRef = useRef(0)
const atmosphere = useAtmosphere()
const spotlightResultGroups = useSpotlightResults(meeting)
Expand Down Expand Up @@ -253,11 +252,22 @@ const RemoteReflection = (props: Props) => {
}
}, [remoteDrag, meetingMembers])

if (!remoteDrag || !editor) return null
if (!remoteDrag) return null
const {dragUserId, dragUserName, isSpotlight} = remoteDrag

const {nextStyle, transform, minTop} = getStyle(remoteDrag, isDropping, isSpotlight, style)
const {headerTransform, arrow} = getHeaderTransform(ref, minTop)
const [arrow, setArrow] = useState<RemoteReflectionArrow | undefined>('arrow_downward')
const [headerTransform, setHeaderTransform] = useState<string | undefined>(undefined)

useEffect(() => {
requestAnimationFrame(() => {
const nextVal = getHeaderTransform(ref, minTop)
if (nextVal.headerTransform !== headerTransform) {
setHeaderTransform(nextVal.headerTransform)
setArrow(nextVal.arrow)
}
})
}, [])
return (
<>
<RemoteReflectionModal
Expand All @@ -271,10 +281,7 @@ const RemoteReflection = (props: Props) => {
>
<ReflectionCardRoot>
{!headerTransform && <UserDraggingHeader userId={dragUserId} name={dragUserName} />}
<TipTapEditor
className={cn('flex min-h-0 items-center px-4 leading-4')}
editor={editor}
/>
<HTMLReflection html={html} disableAnonymity={disableAnonymity} />
{disableAnonymity && (
<ReflectionCardAuthor>{creator?.preferredName}</ReflectionCardAuthor>
)}
Expand Down
4 changes: 2 additions & 2 deletions packages/client/components/ResponseReplied.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ const ResponseReplied = (props: Props) => {
history.push(`/meet/${meetingId}/responses?responseId=${encodeURIComponent(response.id)}`)
}

const {editor, setLinkState, linkState} = useTipTapCommentEditor(comment.content, {
const {editor} = useTipTapCommentEditor(comment.content, {
readOnly: true
})
if (!editor) return null
Expand All @@ -59,7 +59,7 @@ const ResponseReplied = (props: Props) => {
action={<NotificationAction label={'See the discussion'} onClick={goThere} />}
>
<div className='my-1 rounded-sm bg-white p-2 text-sm leading-5 shadow-card'>
<TipTapEditor editor={editor} setLinkState={setLinkState} linkState={linkState} />
<TipTapEditor editor={editor} />
</div>
</NotificationTemplate>
)
Expand Down
23 changes: 23 additions & 0 deletions packages/client/components/RetroReflectPhase/HTMLReflection.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import {cn} from '../../ui/cn'

interface Props {
html: string
disableAnonymity: boolean
}

export const HTMLReflection = (props: Props) => {
const {html, disableAnonymity} = props
return (
<div className={cn('relative w-full overflow-auto text-sm leading-4 text-slate-700')}>
<div
className={cn(
'ProseMirror flex max-h-28 min-h-4 w-full flex-col items-start justify-center px-4 pt-3 leading-none',
disableAnonymity ? 'pb-0' : 'pb-3'
)}
dangerouslySetInnerHTML={{__html: html}}
></div>
</div>
)
}

export default HTMLReflection
17 changes: 3 additions & 14 deletions packages/client/components/RetroReflectPhase/PhaseItemEditor.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ import {cn} from '../../ui/cn'
import ReflectionCardAuthor from '../ReflectionCard/ReflectionCardAuthor'
import ReflectionCardRoot from '../ReflectionCard/ReflectionCardRoot'
import {TipTapEditor} from '../promptResponse/TipTapEditor'
import HTMLReflection from './HTMLReflection'
import {ReflectColumnCardInFlight} from './PhaseItemColumn'
import getBBox from './getBBox'

Expand Down Expand Up @@ -125,7 +126,7 @@ const PhaseItemEditor = (props: Props) => {
setTimeout(removeCardInFlight(content), FLIGHT_TIME)
})
})
const {editor, linkState, setLinkState} = useTipTapReflectionEditor(
const {editor} = useTipTapReflectionEditor(
JSON.stringify({type: 'doc', content: [{type: 'paragraph'}]}),
{
atmosphere,
Expand Down Expand Up @@ -201,8 +202,6 @@ const PhaseItemEditor = (props: Props) => {
disableAnonymity ? 'pb-0' : 'pb-3'
)}
editor={editor}
linkState={linkState}
setLinkState={setLinkState}
onBlur={onBlur}
onFocus={onFocus}
/>
Expand All @@ -221,17 +220,7 @@ const PhaseItemEditor = (props: Props) => {
isStart={card.isStart}
onTransitionEnd={removeCardInFlight(card.key)}
>
<div
className={cn('relative w-full overflow-auto text-sm leading-4 text-slate-700')}
>
<div
className={cn(
'ProseMirror flex max-h-28 min-h-4 w-full flex-col items-start justify-center px-4 pt-3 leading-none',
disableAnonymity ? 'pb-0' : 'pb-3'
)}
dangerouslySetInnerHTML={{__html: card.html}}
></div>
</div>
<HTMLReflection html={card.html} disableAnonymity={disableAnonymity} />
{disableAnonymity && (
<ReflectionCardAuthor>
{viewerMeetingMember?.user.preferredName}
Expand Down
9 changes: 2 additions & 7 deletions packages/client/components/ThreadedCommentBase.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ const ThreadedCommentBase = (props: Props) => {
editor?.setEditable(false)
})

const {editor, setLinkState, linkState} = useTipTapCommentEditor(content, {
const {editor} = useTipTapCommentEditor(content, {
readOnly: true,
atmosphere,
teamId,
Expand Down Expand Up @@ -179,12 +179,7 @@ const ThreadedCommentBase = (props: Props) => {
/>
{isActive && (
<div className='pr-4'>
<TipTapEditor
editor={editor}
setLinkState={setLinkState}
linkState={linkState}
onBlur={onSubmit}
/>
<TipTapEditor editor={editor} onBlur={onSubmit} />
</div>
)}
{isActive && (
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ export const BubbleMenuButton = (props: Props) => {
<Button
variant='flat'
data-highlighted={isActive}
className='h-5 w-5 rounded-xs py-1 hover:bg-slate-300 data-highlighted:bg-slate-300'
className='h-7 w-7 rounded-xs hover:bg-slate-300 data-highlighted:bg-slate-300'
{...rest}
>
{children}
Expand Down
Loading

0 comments on commit 1279061

Please sign in to comment.