Просмотр исходного кода

Merge pull request #15262 from overleaf/td-ide-page-feature-flag

Add IDE page split test handling

GitOrigin-RevId: 911e6d842ad473fcdb99d9715aeea18f02907a99
Tim Down 3 лет назад
Родитель
Сommit
ec085a0807
1 измененных файлов с 18 добавлено и 1 удалено
  1. 18 1
      services/web/app/src/Features/Project/ProjectController.js

+ 18 - 1
services/web/app/src/Features/Project/ProjectController.js

@@ -678,6 +678,21 @@ const ProjectController = {
             }
             }
           )
           )
         },
         },
+        idePageAssignment(cb) {
+          SplitTestHandler.getAssignment(
+            req,
+            res,
+            'ide-page',
+            (error, assignment) => {
+              // do not fail editor load if assignment fails
+              if (error) {
+                cb(null, { variant: 'default' })
+              } else {
+                cb(null, assignment)
+              }
+            }
+          )
+        },
         projectTags(cb) {
         projectTags(cb) {
           if (!userId) {
           if (!userId) {
             return cb(null, [])
             return cb(null, [])
@@ -700,6 +715,7 @@ const ProjectController = {
           pdfjsAssignment,
           pdfjsAssignment,
           historyViewAssignment,
           historyViewAssignment,
           reviewPanelAssignment,
           reviewPanelAssignment,
+          idePageAssignment,
           projectTags,
           projectTags,
         }
         }
       ) => {
       ) => {
@@ -805,7 +821,7 @@ const ProjectController = {
               !Features.hasFeature('saas') ||
               !Features.hasFeature('saas') ||
               req.query?.personal_access_token === 'true'
               req.query?.personal_access_token === 'true'
 
 
-            const idePageReact = req.query?.['ide-page'] === 'react'
+            const idePageReact = idePageAssignment.variant === 'react'
 
 
             const template =
             const template =
               detachRole === 'detached'
               detachRole === 'detached'
@@ -885,6 +901,7 @@ const ProjectController = {
               showCM6SwitchAwaySurvey: Settings.showCM6SwitchAwaySurvey,
               showCM6SwitchAwaySurvey: Settings.showCM6SwitchAwaySurvey,
               historyViewReact: historyViewAssignment.variant === 'react',
               historyViewReact: historyViewAssignment.variant === 'react',
               isReviewPanelReact: reviewPanelAssignment.variant === 'react',
               isReviewPanelReact: reviewPanelAssignment.variant === 'react',
+              idePageReact,
               showPersonalAccessToken,
               showPersonalAccessToken,
               hasTrackChangesFeature: Features.hasFeature('track-changes'),
               hasTrackChangesFeature: Features.hasFeature('track-changes'),
               projectTags,
               projectTags,