()
| 25 | * @return {string} If large mode changed, return string 'reset'; |
| 26 | */ |
| 27 | export default function createRenderPlanner() { |
| 28 | const inner = makeInner<{ |
| 29 | large: boolean |
| 30 | progressiveRender: boolean |
| 31 | }, SeriesModel>(); |
| 32 | |
| 33 | return function (seriesModel: SeriesModel): StageHandlerPlanReturn { |
| 34 | const fields = inner(seriesModel); |
| 35 | const pipelineContext = seriesModel.pipelineContext; |
| 36 | |
| 37 | const originalLarge = !!fields.large; |
| 38 | const originalProgressive = !!fields.progressiveRender; |
| 39 | |
| 40 | // FIXME: if the planner works on a filtered series, `pipelineContext` does not |
| 41 | // exists. See #11611 . Probably we need to modify this structure, see the comment |
| 42 | // on `performRawSeries` in `Schedular.js`. |
| 43 | const large = fields.large = !!(pipelineContext && pipelineContext.large); |
| 44 | const progressive = fields.progressiveRender = !!(pipelineContext && pipelineContext.progressiveRender); |
| 45 | |
| 46 | return ( |
| 47 | !!((originalLarge !== large) || (originalProgressive !== progressive)) && 'reset' |
| 48 | ) as StageHandlerPlanReturn; |
| 49 | }; |
| 50 | } |
no test coverage detected
searching dependent graphs…