PageSourceSearch

https://smartmaths.ai/assets/QaDashboard-UC3iQJlS.js

js smartmaths.ai collected 2026-10-05 15:06:09 UTC 79,811 bytes, 1 lines download raw bytes

1import{j as e,r as M,g as Ne,R as Ae,c as V}from"./main-Dt7Bgl8i.js";import{a as te,n as ae,m as se,f as ne,r as re,b as oe,g as le,d as de}from"./curriculum-data-UeTaQjv3.js";import{S as ke,s as ye}from"./reviewLabels-Svnz85TS.js";import"./worked-examples-BExh4ce1.js";const xe=({totalQuestions:i,totalApproved:t,totalAiAwaiting:a,totalNeedsAttention:r,totalDrafts:s})=>e.jsxs("div",{className:"qa-summary-grid",children:[e.jsxs("div",{className:"qa-summary-card",children:[e.jsx("h3",{children:"In bank"}),e.jsx("div",{className:"value",children:i.toLocaleString()}),e.jsx("div",{className:"qa-summary-sub",children:"All non-deleted"})]}),e.jsxs("div",{className:"qa-summary-card",children:[e.jsx("h3",{children:"Human-approved"}),e.jsx("div",{className:"value",children:t.toLocaleString()}),e.jsx("div",{className:"qa-summary-sub",children:"status = approved"})]}),e.jsxs("div",{className:"qa-summary-card",children:[e.jsx("h3",{children:"AI awaiting sign-off"}),e.jsx("div",{className:"value",children:a.toLocaleString()}),e.jsx("div",{className:"qa-summary-sub",children:"status = agent_reviewed"})]}),e.jsxs("div",{className:"qa-summary-card",children:[e.jsx("h3",{children:"Needs attention"}),e.jsx("div",{className:"value",children:r.toLocaleString()}),e.jsx("div",{className:"qa-summary-sub",children:"flagged + needs_edit"})]}),e.jsxs("div",{className:"qa-summary-card",children:[e.jsx("h3",{children:"Drafts"}),e.jsx("div",{className:"value",children:s.toLocaleString()}),e.jsx("div",{className:"qa-summary-sub",children:"draft + unreviewed"})]})]}),H=({label:i,total:t,reviewed:a})=>{const r=t>0?Math.round(a/t*100):0;let s="bg-red";return r>80?s="bg-green":r>40&&(s="bg-amber"),e.jsxs("tr",{children:[e.jsx("td",{children:i}),e.jsx("td",{style:{width:"100px"},children:t}),e.jsx("td",{style:{width:"100px"},children:a}),e.jsx("td",{style:{width:"200px"},children:e.jsx("div",{className:"qa-progress-bar-bg",children:e.jsx("div",{className:`qa-progress-bar-fill ${s}`,style:{width:`${r}%`}})})}),e.jsxs("td",{style:{width:"60px",textAlign:"right"},children:[r,"%"]})]})},je=({bankStats:i,reviewStats:t})=>{const a=[{id:"reception",label:"Reception"},{id:"year_1",label:"Year 1"},{id:"year_2",label:"Year 2"},{id:"year_3",label:"Year 3"},{id:"year_4",label:"Year 4"},{id:"year_5",label:"Year 5"},{id:"year_6",label:"Year 6"}],r=[{id:"number_place_value",label:"Number & Place Value"},{id:"addition_subtraction",label:"Addition & Subtraction"},{id:"multiplication_division",label:"Multiplication & Division"},{id:"fractions_decimals_percentages",label:"Fractions, Decimals & Pct"},{id:"ratio_proportion",label:"Ratio & Proportion"},{id:"measurement",label:"Measurement"},{id:"geometry",label:"Geometry"},{id:"data_statistics",label:"Data & Statistics"}];return e.jsxs(e.Fragment,{children:[e.jsx("h2",{className:"qa-section-title",children:"Progress by Year Band"}),e.jsx("div",{className:"qa-table-container",children:e.jsxs("table",{className:"qa-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Year Band"}),e.jsx("th",{children:"Total"}),e.jsx("th",{children:"Reviewed"}),e.jsx("th",{children:"Completion"}),e.jsx("th",{children:"%"})]})}),e.jsx("tbody",{children:a.map(s=>e.jsx(H,{label:s.label,total:i.byYearBand[s.id]||0,reviewed:t.reviewedByYearBand[s.id]||0},s.id))})]})}),e.jsx("h2",{className:"qa-section-title",children:"Progress by Strand"}),e.jsx("div",{className:"qa-table-container",children:e.jsxs("table",{className:"qa-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Strand"}),e.jsx("th",{children:"Total"}),e.jsx("th",{children:"Reviewed"}),e.jsx("th",{children:"Completion"}),e.jsx("th",{children:"%"})]})}),e.jsx("tbody",{children:r.map(s=>e.jsx(H,{label:s.label,total:i.byStrand[s.id]||0,reviewed:t.reviewedByStrand[s.id]||0},s.id))})]})})]})},Ve=JSON.parse('{"reception":{"total_items":14,"unmigrated_count":1,"total_cells":2,"total_micro_skills":1,"cell_size_histogram":{"6+":2},"strand_rollup":{"fractions_decimals_percentages":{"items":14,"cells":2,"micro_skills":1,"bands":[2,3]}},"micro_skill_summaries":[{"micro_skill":"FDP.P1.M01","items":14,"bands":[2,3],"per_band":{"2":6,"3":8},"representations":["visual_model"]}],"cells":[{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P1.M01","form":"comparison_statement","band":3,"representation":"visual_model","item_count":8,"item_ids":["FDP.P1.M01.Q03","FDP.P1.M01.Q04","FDP.P1.M01.Q05","FDP.P1.M01.Q06","FDP.P1.M01.Q13","FDP.P1.M01.Q14","FDP.P1.M01.Q15","FDP.P1.M01.Q16"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P1.M01","form":"visual_quantity_to_symbol","band":2,"representation":"visual_model","item_count":6,"item_ids":["FDP.P1.M01.Q07","FDP.P1.M01.Q08","FDP.P1.M01.Q09","FDP.P1.M01.Q10","FDP.P1.M01.Q11","FDP.P1.M01.Q12"]}],"engine_reach":{"total_band_positions":2,"soften_ok":1,"stretch_ok":1,"both_directions_ok":0,"isolated_bands":0},"unmigrated":[{"strand":"number_place_value","id":"NPV.P1.M02.Q01","micro_skill":"NPV.P1.M02","form":"set_to_numeral"}]},"year_1":{"total_items":572,"unmigrated_count":10,"total_cells":156,"total_micro_skills":26,"cell_size_histogram":{"1":45,"2":30,"3":24,"4":16,"5":11,"6+":30},"strand_rollup":{"addition_subtraction":{"items":210,"cells":51,"micro_skills":8,"bands":[1,2,3,4,5]},"number_place_value":{"items":175,"cells":48,"micro_skills":7,"bands":[1,2,3,4]},"geometry":{"items":55,"cells":18,"micro_skills":2,"bands":[1,2,3,4]},"multiplication_division":{"items":44,"cells":15,"micro_skills":2,"bands":[1,2,3]},"fractions_decimals_percentages":{"items":47,"cells":18,"micro_skills":3,"bands":[1,2,3,4,5]},"measurement":{"items":41,"cells":6,"micro_skills":4,"bands":[1,2,3,4]}},"micro_skill_summaries":[{"micro_skill":"AS.P2.M02","items":40,"bands":[1,2,3,4,5],"per_band":{"1":1,"2":16,"3":12,"4":8,"5":3},"representations":["missing_number","visual_model","part_whole","ten_frame","equation_display"]},{"micro_skill":"AS.P2.M03","items":18,"bands":[1,2,3],"per_band":{"1":2,"2":15,"3":1},"representations":["missing_number","part_whole","ten_frame","equation_display","visual_model"]},{"micro_skill":"AS.P2.M04","items":46,"bands":[2,3],"per_band":{"2":32,"3":14},"representations":["visual_model","part_whole","ten_frame","equation_display","symbolic","missing_number"]},{"micro_skill":"AS.P3.M01","items":27,"bands":[1,2,3],"per_band":{"1":13,"2":13,"3":1},"representations":["missing_number","visual_model","equation_display"]},{"micro_skill":"AS.P3.M02","items":15,"bands":[1,2],"per_band":{"1":3,"2":12},"representations":["missing_number","visual_model"]},{"micro_skill":"AS.P3.M03","items":22,"bands":[2,3],"per_band":{"2":3,"3":19},"representations":["missing_number","equation_display","visual_model"]},{"micro_skill":"AS.P3.M04","items":15,"bands":[2,3],"per_band":{"2":1,"3":14},"representations":["missing_number","visual_model"]},{"micro_skill":"AS.P3.M05","items":27,"bands":[2,3,4],"per_band":{"2":19,"3":1,"4":7},"representations":["missing_number","visual_model","equation_display"]},{"micro_skill":"FDP.P1.M02","items":18,"bands":[2,3,4],"per_band":{"2":9,"3":7,"4":2},"representations":["visual_model","comparison","worded_prompt"]},{"micro_skill":"FDP.P2.M01","items":23,"bands":[1,2,3,4,5],"per_band":{"1":2,"2":11,"3":5,"4":3,"5":2},"representations":["visual_model","comparison"]},{"micro_skill":"FDP.P2.M02","items":6,"bands":[2,4,5],"per_band":{"2":3,"4":1,"5":2},"representations":["visual_model"]},{"micro_skill":"GEO.P3.M01","items":27,"bands":[1,2,3,4],"per_band":{"1":6,"2":12,"3":4,"4":5},"representations":["typed_numeric","multiple_choice","visual_model","symbolic"]},{"micro_skill":"GEO.P3.M02","items":28,"bands":[1,2,3,4],"per_band":{"1":8,"2":12,"3":3,"4":5},"representations":["typed_numeric","multiple_choice","visual_model","symbolic"]},{"micro_skill":"MD.P1.M02","items":34,"bands":[1,2,3],"per_band":{"1":13,"2":17,"3":4},"representations":["typed_numeric","visual_model"]},{"micro_skill":"MD.P1.M03","items":10,"bands":[1,2],"per_band":{"1":4,"2":6},"representations":["visual_model","missing_number"]},{"micro_skill":"MEA.P3.M03","items":13,"bands":[1],"per_band":{"1":13},"representations":["visual_model"]},{"micro_skill":"MEA.P4.M04","items":4,"bands":[2],"per_band":{"2":4},"representations":["visual_model"]},{"micro_skill":"MEA.P6.M01","items":12,"bands":[1,3],"per_band":{"1":10,"3":2},"representations":["visual_model"]},{"micro_skill":"MEA.P6.M02","items":12,"bands":[2,4],"per_band":{"2":10,"4":2},"representations":["visual_model"]},{"micro_skill":"NPV.P2.M01","items":16,"bands":[1,2,3,4],"per_band":{"1":4,"2":8,"3":2,"4":2},"representations":["visual_model","symbolic"]},{"micro_skill":"NPV.P2.M02","items":27,"bands":[1,2,3],"per_band":{"1":3,"2":19,"3":5},"representations":["missing_number","visual_model"]},{"micro_skill":"NPV.P2.M03","items":13,"bands":[2,3],"per_band":{"2":7,"3":6},"representations":["missing_number"]},{"micro_skill":"NPV.P2.M04","items":26,"bands":[1,2,3,4],"per_band":{"1":8,"2":7,"3":6,"4":5},"representations":["missing_number","visual_model"]},{"micro_skill":"NPV.P3.M01","items":27,"bands":[2,3],"per_band":{"2":21,"3":6},"representations":["visual_model","missing_number"]},{"micro_skill":"NPV.P3.M02","items":27,"bands":[2,3,4],"per_band":{"2":16,"3":10,"4":1},"representations":["visual_model","missing_number"]},{"micro_skill":"NPV.P3.M03","items":39,"bands":[2,3],"per_band":{"2":18,"3":21},"representations":["comparison","visual_model","missing_number"]}],"cells":[{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"bond_equation","band":2,"representation":"missing_number","item_count":1,"item_ids":["AS.P2.M02.Q01"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"visual_quantity_to_symbol","band":2,"representation":"visual_model","item_count":7,"item_ids":["AS.P2.M02.Q02","AS.P2.M02.Q03","AS.P2.M02.Q04","AS.P2.M02.Q26","AS.P2.M02.Q27","AS.P2.M02.Q28","AS.P2.M02.Q29"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"part_whole_structure","band":2,"representation":"part_whole","item_count":1,"item_ids":["AS.P2.M02.Q15"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"bond_complement","band":2,"representation":"ten_frame","item_count":1,"item_ids":["AS.P2.M02.Q16"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"bond_equation","band":2,"representation":"equation_display","item_count":1,"item_ids":["AS.P2.M02.Q17"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"bond_story_context","band":3,"representation":"visual_model","item_count":1,"item_ids":["AS.P2.M02.Q18"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"bond_equation","band":3,"representation":"missing_number","item_count":4,"item_ids":["AS.P2.M02.Q19","AS.P2.M02.Q20","AS.P2.M02.Q21","AS.P2.M02.Q23"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"bond_equation","band":4,"representation":"missing_number","item_count":1,"item_ids":["AS.P2.M02.Q22"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"bond_equation","band":4,"representation":"equation_display","item_count":1,"item_ids":["AS.P2.M02.Q24"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"bond_equation","band":2,"representation":"part_whole","item_count":1,"item_ids":["AS.P2.M02.Q25"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"domino_bonds","band":1,"representation":"visual_model","item_count":1,"item_ids":["AS.P2.M02.Q30"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"domino_bonds","band":2,"representation":"visual_model","item_count":4,"item_ids":["AS.P2.M02.Q31","AS.P2.M02.Q32","AS.P2.M02.Q33","AS.P2.M02.Q46"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"domino_bonds","band":3,"representation":"visual_model","item_count":7,"item_ids":["AS.P2.M02.Q34","AS.P2.M02.Q35","AS.P2.M02.Q36","AS.P2.M02.Q37","AS.P2.M02.Q38","AS.P2.M02.Q39","AS.P2.M02.Q47"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"domino_bonds","band":4,"representation":"visual_model","item_count":6,"item_ids":["AS.P2.M02.Q40","AS.P2.M02.Q41","AS.P2.M02.Q42","AS.P2.M02.Q43","AS.P2.M02.Q44","AS.P2.M02.Q48"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M02","form":"domino_bonds","band":5,"representation":"visual_model","item_count":3,"item_ids":["AS.P2.M02.Q45","AS.P2.M02.Q49","AS.P2.M02.Q50"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M03","form":"bond_equation","band":2,"representation":"missing_number","item_count":13,"item_ids":["AS.P2.M03.Q01","AS.P2.M03.Q02","AS.P2.M03.Q03","AS.P2.M03.Q04","AS.P2.M03.Q06","AS.P2.M03.Q07","AS.P2.M03.Q08","AS.P2.M03.Q09","AS.P2.M03.Q10","AS.P2.M03.T02","AS.P2.M03.T03","AS.P2.M03.T04","AS.P2.M03.T05"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M03","form":"bond_equation","band":1,"representation":"missing_number","item_count":1,"item_ids":["AS.P2.M03.Q05"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M03","form":"part_whole_structure","band":2,"representation":"part_whole","item_count":1,"item_ids":["AS.P2.M03.Q11"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M03","form":"bond_complement","band":1,"representation":"ten_frame","item_count":1,"item_ids":["AS.P2.M03.Q12"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M03","form":"bond_equation","band":2,"representation":"equation_display","item_count":1,"item_ids":["AS.P2.M03.Q13"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M03","form":"bond_story_context","band":3,"representation":"visual_model","item_count":1,"item_ids":["AS.P2.M03.Q14"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M04","form":"visual_quantity_to_symbol","band":2,"representation":"visual_model","item_count":19,"item_ids":["AS.P2.M04.Q01","AS.P2.M04.Q03","AS.P2.M04.Q04","AS.P2.M04.Q05","AS.P2.M04.Q06","AS.P2.M04.Q07","AS.P2.M04.Q08","AS.P2.M04.Q10","AS.P2.M04.Q11","AS.P2.M04.Q12","AS.P2.M04.Q13","AS.P2.M04.Q15","AS.P2.M04.Q16","AS.P2.M04.Q21","AS.P2.M04.Q24","AS.P2.M04.Q32","AS.P2.M04.Q33","AS.P2.M04.Q34","AS.P2.M04.Q39"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M04","form":"visual_quantity_to_symbol","band":3,"representation":"visual_model","item_count":11,"item_ids":["AS.P2.M04.Q14","AS.P2.M04.Q20","AS.P2.M04.Q22","AS.P2.M04.Q26","AS.P2.M04.Q27","AS.P2.M04.Q28","AS.P2.M04.Q29","AS.P2.M04.Q30","AS.P2.M04.Q31","AS.P2.M04.Q35","AS.P2.M04.Q36"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M04","form":"part_whole_structure","band":2,"representation":"part_whole","item_count":1,"item_ids":["AS.P2.M04.Q17"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M04","form":"unknown_part_within_whole","band":2,"representation":"ten_frame","item_count":1,"item_ids":["AS.P2.M04.Q18"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M04","form":"unknown_part_within_whole","band":2,"representation":"equation_display","item_count":1,"item_ids":["AS.P2.M04.Q19"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M04","form":"visual_quantity_to_symbol","band":2,"representation":"symbolic","item_count":5,"item_ids":["AS.P2.M04.Q23","AS.P2.M04.Q25","AS.P2.M04.Q37","AS.P2.M04.Q38","AS.P2.M04.Q40"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M04","form":"equation_completion","band":2,"representation":"missing_number","item_count":5,"item_ids":["AS.P2.M04.Q41","AS.P2.M04.Q42","AS.P2.M04.Q43","AS.P2.M04.Q44","AS.P2.M04.Q45"]},{"strand":"addition_subtraction","micro_skill":"AS.P2.M04","form":"equation_completion","band":3,"representation":"missing_number","item_count":3,"item_ids":["AS.P2.M04.Q46","AS.P2.M04.Q47","AS.P2.M04.Q48"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M01","form":"equation_completion","band":2,"representation":"missing_number","item_count":2,"item_ids":["AS.P3.M01.Q04","AS.P3.M01.Q10"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M01","form":"doubling","band":1,"representation":"missing_number","item_count":9,"item_ids":["AS.P3.M01.Q13","AS.P3.M01.Q14","AS.P3.M01.Q15","AS.P3.M01.Q16","AS.P3.M01.Q33","AS.P3.M01.Q34","AS.P3.M01.Q35","AS.P3.M01.Q36","AS.P3.M01.Q37"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M01","form":"doubling","band":2,"representation":"missing_number","item_count":6,"item_ids":["AS.P3.M01.Q17","AS.P3.M01.Q23","AS.P3.M01.Q24"
1,"AS.P3.M01.Q25","AS.P3.M01.Q26","AS.P3.M01.Q27"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M01","form":"doubling","band":1,"representation":"visual_model","item_count":4,"item_ids":["AS.P3.M01.Q18","AS.P3.M01.Q19","AS.P3.M01.Q20","AS.P3.M01.Q21"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M01","form":"doubling","band":2,"representation":"visual_model","item_count":1,"item_ids":["AS.P3.M01.Q22"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M01","form":"doubling","band":2,"representation":"equation_display","item_count":4,"item_ids":["AS.P3.M01.Q28","AS.P3.M01.Q29","AS.P3.M01.Q30","AS.P3.M01.Q32"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M01","form":"doubling","band":3,"representation":"equation_display","item_count":1,"item_ids":["AS.P3.M01.Q31"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M02","form":"equation_completion","band":2,"representation":"missing_number","item_count":11,"item_ids":["AS.P3.M02.Q01","AS.P3.M02.Q02","AS.P3.M02.Q03","AS.P3.M02.Q04","AS.P3.M02.Q05","AS.P3.M02.Q07","AS.P3.M02.Q08","AS.P3.M02.Q10","AS.P3.M02.Q11","AS.P3.M02.T02","AS.P3.M02.T03"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M02","form":"equation_completion","band":1,"representation":"missing_number","item_count":3,"item_ids":["AS.P3.M02.Q06","AS.P3.M02.Q09","AS.P3.M02.Q12"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M02","form":"misconception_contrast_probe","band":2,"representation":"visual_model","item_count":1,"item_ids":["AS.P3.M02.Q90"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M03","form":"equation_completion","band":3,"representation":"missing_number","item_count":14,"item_ids":["AS.P3.M03.Q01","AS.P3.M03.Q02","AS.P3.M03.Q03","AS.P3.M03.Q04","AS.P3.M03.Q05","AS.P3.M03.Q06","AS.P3.M03.Q07","AS.P3.M03.Q08","AS.P3.M03.T02","AS.P3.M03.T03","AS.P3.M03.T04","AS.P3.M03.T05","AS.P3.M03.T06","AS.P3.M03.T07"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M03","form":"bridging_through_10_addition","band":2,"representation":"equation_display","item_count":1,"item_ids":["AS.P3.M03.Q10"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M03","form":"bridging_through_10_addition","band":2,"representation":"missing_number","item_count":1,"item_ids":["AS.P3.M03.Q11"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M03","form":"doubling","band":3,"representation":"missing_number","item_count":5,"item_ids":["AS.P3.M03.Q19","AS.P3.M03.Q20","AS.P3.M03.Q21","AS.P3.M03.Q22","AS.P3.M03.Q23"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M03","form":"misconception_contrast_probe","band":2,"representation":"visual_model","item_count":1,"item_ids":["AS.P3.M03.Q90"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M04","form":"equation_completion","band":3,"representation":"missing_number","item_count":14,"item_ids":["AS.P3.M04.Q01","AS.P3.M04.Q02","AS.P3.M04.Q03","AS.P3.M04.Q04","AS.P3.M04.Q05","AS.P3.M04.Q06","AS.P3.M04.Q07","AS.P3.M04.Q08","AS.P3.M04.T02","AS.P3.M04.T03","AS.P3.M04.T04","AS.P3.M04.T05","AS.P3.M04.T06","AS.P3.M04.T07"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M04","form":"misconception_contrast_probe","band":2,"representation":"visual_model","item_count":1,"item_ids":["AS.P3.M04.Q90"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M05","form":"equation_completion","band":2,"representation":"missing_number","item_count":16,"item_ids":["AS.P3.M05.Q01","AS.P3.M05.Q02","AS.P3.M05.Q03","AS.P3.M05.Q05","AS.P3.M05.Q07","AS.P3.M05.Q09","AS.P3.M05.Q11","AS.P3.M05.Q17","AS.P3.M05.Q18","AS.P3.M05.Q19","AS.P3.M05.Q20","AS.P3.M05.Q21","AS.P3.M05.T02","AS.P3.M05.T03","AS.P3.M05.T04","AS.P3.M05.T05"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M05","form":"equation_completion","band":4,"representation":"missing_number","item_count":7,"item_ids":["AS.P3.M05.Q04","AS.P3.M05.Q06","AS.P3.M05.Q08","AS.P3.M05.Q10","AS.P3.M05.Q22","AS.P3.M05.Q23","AS.P3.M05.Q24"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M05","form":"missing_number_bridging","band":2,"representation":"visual_model","item_count":2,"item_ids":["AS.P3.M05.Q12","AS.P3.M05.Q15"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M05","form":"missing_number_bridging","band":2,"representation":"equation_display","item_count":1,"item_ids":["AS.P3.M05.Q13"]},{"strand":"addition_subtraction","micro_skill":"AS.P3.M05","form":"missing_number_bridging","band":3,"representation":"missing_number","item_count":1,"item_ids":["AS.P3.M05.Q14"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M01","form":"count_to_numeral","band":2,"representation":"visual_model","item_count":3,"item_ids":["NPV.P2.M01.Q01","NPV.P2.M01.Q07","NPV.P2.M01.Q08"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M01","form":"word_to_numeral","band":1,"representation":"symbolic","item_count":2,"item_ids":["NPV.P2.M01.Q02","NPV.P2.M01.Q09"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M01","form":"number_line_identify","band":2,"representation":"visual_model","item_count":2,"item_ids":["NPV.P2.M01.Q03","NPV.P2.M01.Q13"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M01","form":"word_to_typed_numeral","band":3,"representation":"symbolic","item_count":2,"item_ids":["NPV.P2.M01.Q04","NPV.P2.M01.Q15"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M01","form":"count_to_numeral","band":1,"representation":"visual_model","item_count":2,"item_ids":["NPV.P2.M01.Q05","NPV.P2.M01.Q06"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M01","form":"word_to_numeral","band":2,"representation":"symbolic","item_count":3,"item_ids":["NPV.P2.M01.Q10","NPV.P2.M01.Q11","NPV.P2.M01.Q12"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M01","form":"number_line_identify","band":4,"representation":"visual_model","item_count":1,"item_ids":["NPV.P2.M01.Q14"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M01","form":"word_to_typed_numeral","band":4,"representation":"symbolic","item_count":1,"item_ids":["NPV.P2.M01.Q16"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M02","form":"equation_completion","band":2,"representation":"missing_number","item_count":4,"item_ids":["NPV.P2.M02.Q01","NPV.P2.M02.T02","NPV.P2.M02.T03","NPV.P2.M02.T04"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M02","form":"count_sequence","band":2,"representation":"missing_number","item_count":3,"item_ids":["NPV.P2.M02.Q03","NPV.P2.M02.Q04","NPV.P2.M02.Q05"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M02","form":"count_sequence","band":3,"representation":"missing_number","item_count":5,"item_ids":["NPV.P2.M02.Q06","NPV.P2.M02.Q07","NPV.P2.M02.Q08","NPV.P2.M02.Q09","NPV.P2.M02.Q10"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M02","form":"sequence_continue","band":2,"representation":"visual_model","item_count":4,"item_ids":["NPV.P2.M02.Q11","NPV.P2.M02.Q15","NPV.P2.M02.Q16","NPV.P2.M02.Q17"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M02","form":"sequence_fill_gap","band":2,"representation":"visual_model","item_count":5,"item_ids":["NPV.P2.M02.Q12","NPV.P2.M02.Q18","NPV.P2.M02.Q19","NPV.P2.M02.Q20","NPV.P2.M02.Q21"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M02","form":"true_false_check","band":2,"representation":"visual_model","item_count":3,"item_ids":["NPV.P2.M02.Q13","NPV.P2.M02.Q22","NPV.P2.M02.Q23"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M02","form":"sequence_continue","band":1,"representation":"visual_model","item_count":1,"item_ids":["NPV.P2.M02.Q14"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M02","form":"true_false_check","band":1,"representation":"visual_model","item_count":1,"item_ids":["NPV.P2.M02.Q24"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M02","form":"equation_completion","band":1,"representation":"missing_number","item_count":1,"item_ids":["NPV.P2.M02.T05"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M03","form":"equation_completion","band":2,"representation":"missing_number","item_count":4,"item_ids":["NPV.P2.M03.Q01","NPV.P2.M03.T02","NPV.P2.M03.T03","NPV.P2.M03.T05"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M03","form":"count_sequence","band":3,"representation":"missing_number","item_count":5,"item_ids":["NPV.P2.M03.Q03","NPV.P2.M03.Q04","NPV.P2.M03.Q05","NPV.P2.M03.Q06","NPV.P2.M03.Q09"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M03","form":"count_sequence","band":2,"representation":"missing_number","item_count":3,"item_ids":["NPV.P2.M03.Q07","NPV.P2.M03.Q08","NPV.P2.M03.Q10"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M03","form":"equation_completion","band":3,"representation":"missing_number","item_count":1,"item_ids":["NPV.P2.M03.T04"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M04","form":"equation_completion","band":3,"representation":"missing_number","item_count":6,"item_ids":["NPV.P2.M04.Q03","NPV.P2.M04.Q04","NPV.P2.M04.Q05","NPV.P2.M04.Q06","NPV.P2.M04.Q07","NPV.P2.M04.Q08"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M04","form":"equation_completion","band":4,"representation":"missing_number","item_count":5,"item_ids":["NPV.P2.M04.Q09","NPV.P2.M04.Q10","NPV.P2.M04.T02","NPV.P2.M04.T03","NPV.P2.M04.T04"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M04","form":"equation_completion","band":2,"representation":"missing_number","item_count":3,"item_ids":["NPV.P2.M04.Q11","NPV.P2.M04.Q12","NPV.P2.M04.T05"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M04","form":"equation_completion","band":2,"representation":"visual_model","item_count":3,"item_ids":["NPV.P2.M04.Q13","NPV.P2.M04.Q18","NPV.P2.M04.Q23"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M04","form":"equation_completion","band":1,"representation":"missing_number","item_count":4,"item_ids":["NPV.P2.M04.Q14","NPV.P2.M04.Q19","NPV.P2.M04.Q20","NPV.P2.M04.Q21"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M04","form":"equation_completion","band":1,"representation":"visual_model","item_count":4,"item_ids":["NPV.P2.M04.Q15","NPV.P2.M04.Q16","NPV.P2.M04.Q17","NPV.P2.M04.Q22"]},{"strand":"number_place_value","micro_skill":"NPV.P2.M04","form":"numeral_to_set_probe","band":2,"representation":"visual_model","item_count":1,"item_ids":["NPV.P2.M04.Q91"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M01","form":"ten_and_ones_to_numeral","band":2,"representation":"visual_model","item_count":7,"item_ids":["NPV.P3.M01.Q21","NPV.P3.M01.Q24","NPV.P3.M01.Q25","NPV.P3.M01.Q26","NPV.P3.M01.Q27","NPV.P3.M01.Q28","NPV.P3.M01.Q29"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M01","form":"language_to_teen_numeral","band":2,"representation":"missing_number","item_count":7,"item_ids":["NPV.P3.M01.Q22","NPV.P3.M01.Q32","NPV.P3.M01.Q33","NPV.P3.M01.Q34","NPV.P3.M01.Q35","NPV.P3.M01.Q36","NPV.P3.M01.Q37"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M01","form":"teen_equation_identification","band":2,"representation":"visual_model","item_count":7,"item_ids":["NPV.P3.M01.Q23","NPV.P3.M01.Q40","NPV.P3.M01.Q41","NPV.P3.M01.Q42","NPV.P3.M01.Q43","NPV.P3.M01.Q44","NPV.P3.M01.Q45"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M01","form":"ten_and_ones_to_numeral","band":3,"representation":"visual_model","item_count":2,"item_ids":["NPV.P3.M01.Q30","NPV.P3.M01.Q31"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M01","form":"language_to_teen_numeral","band":3,"representation":"missing_number","item_count":2,"item_ids":["NPV.P3.M01.Q38","NPV.P3.M01.Q39"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M01","form":"teen_equation_identification","band":3,"representation":"visual_model","item_count":2,"item_ids":["NPV.P3.M01.Q46","NPV.P3.M01.Q47"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M02","form":"numeral_to_ten_and_ones","band":2,"representation":"visual_model","item_count":7,"item_ids":["NPV.P3.M02.Q11","NPV.P3.M02.Q14","NPV.P3.M02.Q15","NPV.P3.M02.Q16","NPV.P3.M02.Q17","NPV.P3.M02.Q18","NPV.P3.M02.Q19"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M02","form":"teen_partition_equation","band":3,"representation":"missing_number","item_count":6,"item_ids":["NPV.P3.M02.Q12","NPV.P3.M02.Q24","NPV.P3.M02.Q25","NPV.P3.M02.Q26","NPV.P3.M02.Q27","NPV.P3.M02.Q28"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M02","form":"teen_equation_identification","band":2,"representation":"visual_model","item_count":7,"item_ids":["NPV.P3.M02.Q13","NPV.P3.M02.Q30","NPV.P3.M02.Q31","NPV.P3.M02.Q32","NPV.P3.M02.Q33","NPV.P3.M02.Q34","NPV.P3.M02.Q35"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M02","form":"numeral_to_ten_and_ones","band":3,"representation":"visual_model","item_count":2,"item_ids":["NPV.P3.M02.Q20","NPV.P3.M02.Q21"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M02","form":"teen_partition_equation","band":2,"representation":"missing_number","item_count":2,"item_ids":["NPV.P3.M02.Q22","NPV.P3.M02.Q23"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M02","form":"teen_partition_equation","band":4,"representation":"missing_number","item_count":1,"item_ids":["NPV.P3.M02.Q29"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M02","form":"teen_equation_identification","band":3,"representation":"visual_model","item_count":2,"item_ids":["NPV.P3.M02.Q36","NPV.P3.M02.Q37"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M03","form":"teen_comparison_greater","band":3,"representation":"comparison","item_count":4,"item_ids":["NPV.P3.M03.Q15","NPV.P3.M03.Q16","NPV.P3.M03.Q18","NPV.P3.M03.Q22"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M03","form":"teen_comparison_smaller","band":2,"representation":"comparison","item_count":4,"item_ids":["NPV.P3.M03.Q17","NPV.P3.M03.Q24","NPV.P3.M03.Q25","NPV.P3.M03.Q26"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M03","form":"teen_comparison_greater","band":2,"representation":"comparison","item_count":3,"item_ids":["NPV.P3.M03.Q19","NPV.P3.M03.Q20","NPV.P3.M03.Q21"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M03","form":"teen_comparison_smaller","band":3,"representation":"comparison","item_count":2,"item_ids":["NPV.P3.M03.Q23","NPV.P3.M03.Q27"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M03","form":"comparison","band":2,"representation":"visual_model","item_count":11,"item_ids":["NPV.P3.M03.Q28","NPV.P3.M03.Q30","NPV.P3.M03.Q32","NPV.P3.M03.Q33","NPV.P3.M03.Q36","NPV.P3.M03.Q40","NPV.P3.M03.Q41","NPV.P3.M03.Q45","NPV.P3.M03.Q46","NPV.P3.M03.Q48","NPV.P3.M03.Q50"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M03","form":"comparison","band":3,"representation":"missing_number","item_count":7,"item_ids":["NPV.P3.M03.Q31","NPV.P3.M03.Q38","NPV.P3.M03.Q39","NPV.P3.M03.Q51","NPV.P3.M03.Q52","NPV.P3.M03.Q53","NPV.P3.M03.Q54"]},{"strand":"number_place_value","micro_skill":"NPV.P3.M03","form":"comparison","band":3,"representation":"visual_model","item_count":8,"item_ids":["NPV.P3.M03.Q34","NPV.P3.M03.Q35","NPV.P3.M03.Q37","NPV.P3.M03.Q42","NPV.P3.M03.Q43","NPV.P3.M03.Q44","NPV.P3.M03.Q47","NPV.P3.M03.Q49"]},{"strand":"geometry","micro_skill":"GEO.P3.M01","form":"symbolic_numeric_entry","band":2,"representation":"t
1yped_numeric","item_count":3,"item_ids":["GEO.P3.M01.Q01","GEO.P3.M01.Q03","GEO.P3.M01.Q05"]},{"strand":"geometry","micro_skill":"GEO.P3.M01","form":"symbolic_choice","band":1,"representation":"multiple_choice","item_count":5,"item_ids":["GEO.P3.M01.Q04","GEO.P3.M01.Q08","GEO.P3.M01.Q13","GEO.P3.M01.Q15","GEO.P3.M01.Q28"]},{"strand":"geometry","micro_skill":"GEO.P3.M01","form":"symbolic_numeric_entry","band":2,"representation":"visual_model","item_count":1,"item_ids":["GEO.P3.M01.Q09"]},{"strand":"geometry","micro_skill":"GEO.P3.M01","form":"symbolic_choice","band":3,"representation":"multiple_choice","item_count":2,"item_ids":["GEO.P3.M01.Q16","GEO.P3.M01.Q29"]},{"strand":"geometry","micro_skill":"GEO.P3.M01","form":"symbolic_choice","band":1,"representation":"visual_model","item_count":1,"item_ids":["GEO.P3.M01.Q26"]},{"strand":"geometry","micro_skill":"GEO.P3.M01","form":"shape_property","band":2,"representation":"visual_model","item_count":8,"item_ids":["GEO.P3.M01.Q34","GEO.P3.M01.Q35","GEO.P3.M01.Q36","GEO.P3.M01.Q37","GEO.P3.M01.Q40","GEO.P3.M01.Q41","GEO.P3.M01.Q42","GEO.P3.M01.Q43"]},{"strand":"geometry","micro_skill":"GEO.P3.M01","form":"shape_property","band":3,"representation":"visual_model","item_count":2,"item_ids":["GEO.P3.M01.Q38","GEO.P3.M01.Q39"]},{"strand":"geometry","micro_skill":"GEO.P3.M01","form":"shape_property","band":4,"representation":"visual_model","item_count":2,"item_ids":["GEO.P3.M01.Q44","GEO.P3.M01.Q45"]},{"strand":"geometry","micro_skill":"GEO.P3.M01","form":"shape_property","band":4,"representation":"symbolic","item_count":3,"item_ids":["GEO.P3.M01.Q46","GEO.P3.M01.Q47","GEO.P3.M01.Q48"]},{"strand":"geometry","micro_skill":"GEO.P3.M02","form":"symbolic_numeric_entry","band":2,"representation":"typed_numeric","item_count":3,"item_ids":["GEO.P3.M02.Q03","GEO.P3.M02.Q05","GEO.P3.M02.Q11"]},{"strand":"geometry","micro_skill":"GEO.P3.M02","form":"symbolic_choice","band":1,"representation":"multiple_choice","item_count":6,"item_ids":["GEO.P3.M02.Q04","GEO.P3.M02.Q07","GEO.P3.M02.Q08","GEO.P3.M02.Q15","GEO.P3.M02.Q17","GEO.P3.M02.Q28"]},{"strand":"geometry","micro_skill":"GEO.P3.M02","form":"symbolic_numeric_entry","band":2,"representation":"visual_model","item_count":1,"item_ids":["GEO.P3.M02.Q09"]},{"strand":"geometry","micro_skill":"GEO.P3.M02","form":"symbolic_choice","band":1,"representation":"visual_model","item_count":2,"item_ids":["GEO.P3.M02.Q19","GEO.P3.M02.Q26"]},{"strand":"geometry","micro_skill":"GEO.P3.M02","form":"symbolic_choice","band":3,"representation":"multiple_choice","item_count":1,"item_ids":["GEO.P3.M02.Q22"]},{"strand":"geometry","micro_skill":"GEO.P3.M02","form":"shape_property","band":2,"representation":"visual_model","item_count":8,"item_ids":["GEO.P3.M02.Q33","GEO.P3.M02.Q34","GEO.P3.M02.Q35","GEO.P3.M02.Q36","GEO.P3.M02.Q39","GEO.P3.M02.Q40","GEO.P3.M02.Q41","GEO.P3.M02.Q42"]},{"strand":"geometry","micro_skill":"GEO.P3.M02","form":"shape_property","band":3,"representation":"visual_model","item_count":2,"item_ids":["GEO.P3.M02.Q37","GEO.P3.M02.Q38"]},{"strand":"geometry","micro_skill":"GEO.P3.M02","form":"shape_property","band":4,"representation":"visual_model","item_count":2,"item_ids":["GEO.P3.M02.Q43","GEO.P3.M02.Q44"]},{"strand":"geometry","micro_skill":"GEO.P3.M02","form":"shape_property","band":4,"representation":"symbolic","item_count":3,"item_ids":["GEO.P3.M02.Q45","GEO.P3.M02.Q46","GEO.P3.M02.Q47"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M02","form":"symbolic_numeric_entry","band":1,"representation":"typed_numeric","item_count":5,"item_ids":["MD.P1.M02.Q01","MD.P1.M02.T02","MD.P1.M02.T03","MD.P1.M02.T04","MD.P1.M02.T05"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M02","form":"?","band":1,"representation":"typed_numeric","item_count":2,"item_ids":["MD.P1.M02.Q03","MD.P1.M02.Q05"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M02","form":"?","band":2,"representation":"typed_numeric","item_count":3,"item_ids":["MD.P1.M02.Q04","MD.P1.M02.Q06","MD.P1.M02.Q07"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M02","form":"?","band":3,"representation":"t
1yped_numeric","item_count":3,"item_ids":["MD.P1.M02.Q08","MD.P1.M02.Q09","MD.P1.M02.Q10"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M02","form":"sequence_continue","band":1,"representation":"visual_model","item_count":4,"item_ids":["MD.P1.M02.Q11","MD.P1.M02.Q15","MD.P1.M02.Q16","MD.P1.M02.Q17"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M02","form":"sequence_fill_gap","band":2,"representation":"visual_model","item_count":4,"item_ids":["MD.P1.M02.Q12","MD.P1.M02.Q21","MD.P1.M02.Q22","MD.P1.M02.Q23"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M02","form":"count_equal_groups","band":2,"representation":"visual_model","item_count":3,"item_ids":["MD.P1.M02.Q13","MD.P1.M02.Q26","MD.P1.M02.Q27"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M02","form":"true_false_check","band":2,"representation":"visual_model","item_count":4,"item_ids":["MD.P1.M02.Q14","MD.P1.M02.Q29","MD.P1.M02.Q30","MD.P1.M02.Q31"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M02","form":"sequence_continue","band":2,"representation":"visual_model","item_count":3,"item_ids":["MD.P1.M02.Q18","MD.P1.M02.Q19","MD.P1.M02.Q20"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M02","form":"sequence_fill_gap","band":3,"representation":"visual_model","item_count":1,"item_ids":["MD.P1.M02.Q24"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M02","form":"count_equal_groups","band":1,"representation":"visual_model","item_count":2,"item_ids":["MD.P1.M02.Q25","MD.P1.M02.Q28"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M03","form":"halving","band":2,"representation":"visual_model","item_count":3,"item_ids":["MD.P1.M03.Q15","MD.P1.M03.Q18","MD.P1.M03.Q19"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M03","form":"halving","band":1,"representation":"visual_model","item_count":2,"item_ids":["MD.P1.M03.Q16","MD.P1.M03.Q17"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M03","form":"halving","band":2,"representation":"missing_number","item_count":3,"item_ids":["MD.P1.M03.Q20","MD.P1.M03.Q21","MD.P1.M03.Q22"]},{"strand":"multiplication_division","micro_skill":"MD.P1.M03","form":"halving","band":1,"representation":"missing_number","item_count":2,"item_ids":["MD.P1.M03.Q23","MD.P1.M03.Q24"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P1.M02","form":"visual_quantity_to_symbol","band":2,"representation":"visual_model","item_count":8,"item_ids":["FDP.P1.M02.Q01","FDP.P1.M02.Q03","FDP.P1.M02.Q04","FDP.P1.M02.Q05","FDP.P1.M02.Q08","FDP.P1.M02.Q14","FDP.P1.M02.Q17","FDP.P1.M02.Q18"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P1.M02","form":"comparison_statement","band":3,"representation":"comparison","item_count":3,"item_ids":["FDP.P1.M02.Q02","FDP.P1.M02.Q09","FDP.P1.M02.Q11"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P1.M02","form":"visual_quantity_to_symbol","band":4,"representation":"visual_model","item_count":2,"item_ids":["FDP.P1.M02.Q06","FDP.P1.M02.Q16"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P1.M02","form":"visual_quantity_to_symbol","band":3,"representation":"visual_model","item_count":3,"item_ids":["FDP.P1.M02.Q07","FDP.P1.M02.Q15","FDP.P1.M02.Q20"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P1.M02","form":"context_calculation","band":3,"representation":"worded_prompt","item_count":1,"item_ids":["FDP.P1.M02.Q10"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P1.M02","form":"misconception_contrast_probe","band":2,"representation":"comparison","item_count":1,"item_ids":["FDP.P1.M02.Q90"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P2.M01","form":"visual_quantity_to_symbol","band":2,"representation":"visual_model","item_count":5,"item_ids":["FDP.P2.M01.Q01","FDP.P2.M01.Q03","FDP.P2.M01.Q04","FDP.P2.M01.Q05","FDP.P2.M01.Q07"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P2.M01","form":"visual_quantity_to_symbol","band":4,"representation":"visual_model","item_count":1,"item_ids":["FDP.P2.M01.Q06"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P2.M01","form":"numeral_to_set_match","band":3,"representation":"visual_model","item_count":1,"item_ids":["FDP.P2.M01.Q10"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P2.M01","form":"fraction_identification","band":1,"representation":"visual_model","item_count":2,"item_ids":["FDP.P2.M01.Q21","FDP.P2.M01.Q27"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P2.M01","form":"fraction_identification","band":2,"representation":"visual_model","item_count":5,"item_ids":["FDP.P2.M01.Q22","FDP.P2.M01.Q24","FDP.P2.M01.Q25","FDP.P2.M01.Q28","FDP.P2.M01.Q31"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P2.M01","form":"fraction_identification","band":4,"representation":"visual_model","item_count":2,"item_ids":["FDP.P2.M01.Q23","FDP.P2.M01.Q32"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P2.M01","form":"fraction_identification","band":5,"representation":"visual_model","item_count":2,"item_ids":["FDP.P2.M01.Q26","FDP.P2.M01.Q35"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P2.M01","form":"fraction_identification","band":3,"representation":"visual_model","item_count":4,"item_ids":["FDP.P2.M01.Q29","FDP.P2.M01.Q30","FDP.P2.M01.Q33","FDP.P2.M01.Q34"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P2.M01","form":"misconception_contrast_probe","band":2,"representation":"comparison","item_count":1,"item_ids":["FDP.P2.M01.Q90"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P2.M02","form":"fraction_identification","band":2,"representation":"visual_model","item_count":3,"item_ids":["FDP.P2.M02.Q21","FDP.P2.M02.Q22","FDP.P2.M02.Q25"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P2.M02","form":"fraction_identification","band":5,"representation":"visual_model","item_count":2,"item_ids":["FDP.P2.M02.Q23","FDP.P2.M02.Q26"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P2.M02","form":"fraction_identification","band":4,"representation":"visual_model","item_count":1,"item_ids":["FDP.P2.M02.Q24"]},{"strand":"measurement","micro_skill":"MEA.P3.M03","form":"time_vocabulary","band":1,"representation":"visual_model","item_count":13,"item_ids":["MEA.P3.M03.Q03","MEA.P3.M03.Q04","MEA.P3.M03.Q05","MEA.P3.M03.Q06","MEA.P3.M03.Q07","MEA.P3.M03.Q08","MEA.P3.M03.Q09","MEA.P3.M03.Q10","MEA.P3.M03.Q11","MEA.P3.M03.Q12","MEA.P3.M03.Q13","MEA.P3.M03.Q14","MEA.P3.M03.Q15"]},{"strand":"measurement","micro_skill":"MEA.P4.M04","form":"comparative_length","band":2,"representation":"visual_model","item_count":4,"item_ids":["MEA.P4.M04.Q20","MEA.P4.M04.Q21","MEA.P4.M04.Q22","MEA.P4.M04.Q23"]},{"strand":"measurement","micro_skill":"MEA.P6.M01","form":"time_reading","band":1,"representation":"visual_model","item_count":10,"item_ids":["MEA.P6.M01.Q25","MEA.P6.M01.Q26","MEA.P6.M01.Q27","MEA.P6.M01.Q29","MEA.P6.M01.Q31","MEA.P6.M01.Q32","MEA.P6.M01.Q33","MEA.P6.M01.Q34","MEA.P6.M01.Q35","MEA.P6.M01.Q36"]},{"strand":"measurement","micro_skill":"MEA.P6.M01","form":"time_reading","band":3,"representation":"visual_model","item_count":2,"item_ids":["MEA.P6.M01.Q28","MEA.P6.M01.Q30"]},{"strand":"measurement","micro_skill":"MEA.P6.M02","form":"time_reading","band":2,"representation":"visual_model","item_count":10,"item_ids":["MEA.P6.M02.Q25","MEA.P6.M02.Q26","MEA.P6.M02.Q27","MEA.P6.M02.Q29","MEA.P6.M02.Q31","MEA.P6.M02.Q32","MEA.P6.M02.Q33","MEA.P6.M02.Q34","MEA.P6.M02.Q35","MEA.P6.M02.Q36"]},{"strand":"measurement","micro_skill":"MEA.P6.M02","form":"time_reading","band":4,"representation":"visual_model","item_count":2,"item_ids":["MEA.P6.M02.Q28","MEA.P6.M02.Q30"]}],"engine_reach":{"total_band_positions":72,"soften_ok":43,"stretch_ok":43,"both_directions_ok":21,"isolated_bands":7},"unmigrated":[{"strand":"addition_subtraction","id":"AS.P3.M03.Q12","micro_skill":"AS.P3.M03","form":"addition"},{"strand":"addition_subtraction","id":"AS.P3.M03.Q13","micro_skill":"AS.P3.M03","form":"addition"},{"strand":"addition_subtraction","id":"AS.P3.M03.Q14","micro_skill":"AS.P3.M03","form":"addition"},{"strand":"addition_subtraction","id":"AS.P3.M03.Q15","micro_skill":"AS.P3.M03","form":"addition"},{"strand":"addition_subtraction","id":"AS.P3.M03.Q16","micro_skill":"AS.P3.M03","form":"addition"},{"strand":"addition_subtraction","id":"AS.P3.M03.Q17","micro_skill":"AS.P3.M03","form":"addition"},{"strand":"addition_subtraction","id":"AS.P3.M03.Q18","micro_skill":"AS.P3.M03","form":"addition"},{"strand":"addition_subtraction","id":"AS.P3.M05.Q16","micro_skill":"AS.P3.M05","form":"missing_addend"},{"strand":"fractions_decimals_percentages","id":"FDP.P2.M01.Q16","micro_skill":"FDP.P2.M01","form":"?"},{"strand":"fractions_decimals_percentages","id":"FDP.P2.M01.Q17","micro_skill":"FDP.P2.M01","form":"?"}]},"year_2":{"total_items":2,"unmigrated_count":0,"total_cells":2,"total_micro_skills":2,"cell_size_histogram":{"1":2},"strand_rollup":{"geometry":{"items":1,"cells":1,"micro_skills":1,"bands":[2]},"fractions_decimals_percentages":{"items":1,"cells":1,"micro_skills":1,"bands":[2]}},"micro_skill_summaries":[{"micro_skill":"FDP.P1.M02","items":1,"bands":[2],"per_band":{"2":1},"representations":["visual_model"]},{"micro_skill":"GEO.P3.M01","items":1,"bands":[2],"per_band":{"2":1},"representations":["typed_numeric"]}],"cells":[{"strand":"geometry","micro_skill":"GEO.P3.M01","form":"symbolic_numeric_entry","band":2,"representation":"t
1yped_numeric","item_count":1,"item_ids":["GEO.P3.M01.Q33"]},{"strand":"fractions_decimals_percentages","micro_skill":"FDP.P1.M02","form":"visual_quantity_to_symbol","band":2,"representation":"visual_model","item_count":1,"item_ids":["FDP.P1.M02.Q19"]}],"engine_reach":{"total_band_positions":2,"soften_ok":0,"stretch_ok":0,"both_directions_ok":0,"isolated_bands":2},"unmigrated":[]}}'),qe={by_year:Ve},ce={},me={};[te,ae,se,ne,re,oe,le,de].forEach(i=>{const t=i.strand_id||i.id||"unknown";(i.micro_skills||[]).forEach(a=>{a.id&&(a.label&&(ce[a.id]=a.label),me[a.id]=t)})});const we={addition_subtraction:"Addition & Subtraction",number_place_value:"Number & Place Value",multiplication_division:"Multiplication & Division",fractions_decimals_percentages:"Fractions, Decimals & Percentages",ratio_proportion:"Ratio & Proportion",measurement:"Measurement",geometry:"Geometry",data_statistics:"Data & Statistics"};function De(i,t){const a=i.map(s=>t[String(s)]??0);if(i.some(s=>(t[String(s-1)]??0)===0&&(t[String(s+1)]??0)===0))return"isolated";for(let s=1;s<i.length;s++)if(i[s]-i[s-1]>1)return"gap";return a.some(s=>s<3)?"thin":"healthy"}const T={healthy:{label:"Healthy",color:"#15803d",emoji:"🟢",rank:0},thin:{label:"Thin band",color:"#b45309",emoji:"🟡",rank:1},gap:{label:"1-band gap",color:"#b91c1c",emoji:"🔴",rank:2},isolated:{label:"Isolated band",color:"#b91c1c",emoji:"🔴",rank:3}};function Ee(i){return i===0?{background:"#f3f4f6",color:"#9ca3af"}:i<3?{background:"#fee2e2",color:"#991b1b"}:i<5?{background:"#fef3c7",color:"#92400e"}:{background:"#dcfce7",color:"#166534"}}const J=[1,2,3,4,5],Fe="smartmaths_qa_drilldown";function U(i){try{sessionStorage.setItem(Fe,JSON.stringify(i))}catch{}}const Oe=({year:i,onDrillToQuestions:t})=>{const a=i==="all"?null:qe.by_year?.[i],r=M.useMemo(()=>{if(!a)return null;const _={};for(const c of a.micro_skill_summaries||[]){const o=me[c.micro_skill]||"unknown",u=De(c.bands,c.per_band);_[o]??=[],_[o].push({...c,status:u})}for(const c of Object.keys(_))_[c].sort((o,u)=>{const P=T[o.status].rank,p=T[u.status].rank;return P!==p?p-P:u.items-o.items});return _},[a]);if(i==="all")return e.jsxs("div",{className:"qa-coverage-section",children:[e.jsx("h3",{className:"qa-section-title",children:"Curriculum coverage — gaps by complexity band"}),e.jsx("p",{className:"qa-coverage-empty",children:"Pick a year band above to see the coverage heatmap."})]});if(!a)return e.jsxs("div",{className:"qa-coverage-section",children:[e.jsx("h3",{className:"qa-section-title",children:"Curriculum coverage — gaps by complexity band"}),e.jsxs("p",{className:"qa-coverage-empty",children:["No coverage data for ",i,"."]})]});const s=a.total_items+a.unmigrated_count,d=s>0?Math.round(a.unmigrated_count/s*100):0;return e.jsxs("div",{className:"qa-coverage-section",children:[e.jsx("h3",{className:"qa-section-title",children:"Curriculum coverage — gaps by complexity band"}),e.jsx("p",{className:"qa-coverage-hint",children:"Click any cell to drill into the matching questions. Click a micro-skill code to see all bands."}),e.jsxs("p",{className:"qa-coverage-meta",children:[a.total_items," approved items bucketed across ",a.total_micro_skills," micro-skills."," ",a.unmigrated_count>0&&e.jsxs("span",{className:"qa-coverage-warn",children:["⚠ ",a.unmigrated_count," (",d,"%) lack ",e.jsx("code",{children:"complexity_band"})," ","— backfill required for full band analysis."]})]}),r&&Object.entries(r).sort().map(([_,c])=>e.jsxs("div",{className:"qa-coverage-strand",children:[e.jsx("h4",{className:"qa-coverage-strand-title",children:we[_]||_}),e.jsxs("table",{className:"qa-coverage-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{className:"qa-coverage-msid",children:"Micro-skill"}),e.jsx("th",{className:"qa-coverage-num",children:"Total"}),J.map(o=>e.jsxs("th",{className:"qa-coverage-num",children:["B",o]},o)),e.jsx("th",{className:"qa-coverage-status",children:"Status"})]})}),e.jsx("tbody",{children:c.map(o=>{const u=T[o.status],P=()=>{t&&(U({microSkill:o.micro_skill,year:i}),t())};return e.jsxs("tr",{children:[e.jsx("td",{className:"qa-coverage-msid",children:e.jsxs("button",{type:"button",className:"qa-coverage-msid-btn",onClick:P,title:`Show all ${o.items} ${o.micro_skill} questions`,children:[e.jsx("code",{children:o.micro_skill}),e.jsx("span",{className:"qa-coverage-label",children:ce[o.micro_skill]||""})]})}),e.jsx("td",{className:"qa-coverage-num",children:e.jsx("button",{type:"button",className:"qa-coverage-cell-btn",onClick:P,children:o.items})}),J.map(p=>{const m=o.per_band[String(p)]??0,l=Ee(m),h=()=>{t&&(U({microSkill:o.micro_skill,band:p,year:i}),t())};return e.jsx("td",{className:"qa-coverage-band",style:{background:l.background,color:l.color},children:e.jsx("button",{type:"button",className:"qa-coverage-cell-btn",onClick:h,title:`Drill into ${o.micro_skill} · Band ${p} (${m} item${m===1?"":"s"})`,children:m===0?"—":m})},p)}),e.jsxs("td",{className:"qa-coverage-status",style:{color:u.color}
1,children:[e.jsx("span",{"aria-hidden":!0,children:u.emoji})," ",u.label]})]},o.micro_skill)})})]})]},_)),e.jsxs("div",{className:"qa-coverage-legend",children:[e.jsx("span",{children:e.jsx("strong",{children:"Cells:"})}),e.jsx("span",{className:"qa-legend-pill",style:{background:"#f3f4f6",color:"#9ca3af"},children:"—"})," empty",e.jsx("span",{className:"qa-legend-pill",style:{background:"#fee2e2",color:"#991b1b"},children:"1-2"})," thin (engine unreachable)",e.jsx("span",{className:"qa-legend-pill",style:{background:"#fef3c7",color:"#92400e"},children:"3-4"})," functional",e.jsx("span",{className:"qa-legend-pill",style:{background:"#dcfce7",color:"#166534"},children:"5+"})," healthy"]})]})};function Te(i){return i.question_family==="concept_transfer"||i.form_variant==="varied"||i.form_variant==="contextual"}function Ge(i){const t=i.filter(s=>s.status==="approved"),a={};t.forEach(s=>{const d=s.typical_year_band_id;a[d]||(a[d]=new Map);const _=a[d],o=_.get(s.micro_skill_id)??{microSkillId:s.micro_skill_id,strandId:s.strand_id,liveCount:0,hasTransfer:!1};o.liveCount+=1,Te(s)&&(o.hasTransfer=!0),_.set(s.micro_skill_id,o)});const r={};return Object.entries(a).forEach(([s,d])=>{const _=Array.from(d.values()).sort((c,o)=>c.liveCount-o.liveCount);r[s]={yearBand:s,liveTotal:_.reduce((c,o)=>c+o.liveCount,0),microSkillCount:_.length,microSkillsWithTransfer:_.filter(c=>c.hasTransfer).length,microSkills:_}}),r}const _e={};[te,ae,se,ne,re,oe,le,de].forEach(i=>{(i.micro_skills||[]).forEach(t=>{t.id&&t.label&&(_e[t.id]=t.label)})});const Ce={addition_subtraction:"Addition & Subtraction",number_place_value:"Number & Place Value",multiplication_division:"Multiplication & Division",fractions_decimals_percentages:"Fractions, Decimals & Percentages",ratio_proportion:"Ratio & Proportion",measurement:"Measurement",geometry:"Geometry",data_statistics:"Data & Statistics"},w={reception:"Reception",year_1:"Year 1",year_2:"Year 2",year_3:"Year 3",year_4:"Year 4",year_5:"Year 5",year_6:"Year 6"},Be=["reception","year_1","year_2","year_3","year_4","year_5","year_6"],z=5;function X({entry:i,band:t}){return e.jsxs("li",{className:"qa-depth-thin-item",children:[e.jsx("code",{className:"qa-depth-msid",children:i.microSkillId}),e.jsx("span",{className:"qa-depth-mslabel",children:_e[i.microSkillId]||""}),e.jsx("span",{className:"qa-depth-strand",children:Ce[i.strandId]||i.strandId}),t&&e.jsx("span",{className:"qa-depth-band-tag",children:w[t]||t}),e.jsxs("span",{className:"qa-depth-count",children:[i.liveCount," live"]}),!i.hasTransfer&&e.jsx("span",{className:"qa-depth-no-transfer",children:"no transfer item"})]})}function Ye({summary:i}){return e.jsxs("tr",{children:[e.jsx("td",{children:w[i.yearBand]||i.yearBand}),e.jsx("td",{className:"qa-depth-num",children:i.liveTotal.toLocaleString()}),e.jsx("td",{className:"qa-depth-num",children:i.microSkillCount}),e.jsxs("td",{className:"qa-depth-num",children:[i.microSkillsWithTransfer,"/",i.microSkillCount]})]})}const Re=({year:i,allQuestions:t})=>{const a=M.useMemo(()=>Ge(t),[t]),r=M.useMemo(()=>Be.filter(_=>a[_]),[a]);if(r.length===0)return e.jsxs("div",{className:"qa-depth-section",children:[e.jsx("h3",{className:"qa-section-title",children:"Bank depth & transfer coverage"}),e.jsx("p",{className:"qa-depth-empty",children:"No approved (live) questions yet."})]});if(i==="all"){const _=r.flatMap(c=>a[c].microSkills.map(o=>({...o,band:c}))).sort((c,o)=>c.liveCount-o.liveCount).slice(0,z);return e.jsxs("div",{className:"qa-depth-section",children:[e.jsx("h3",{className:"qa-section-title",children:"Bank depth & transfer coverage"}),e.jsx("p",{className:"qa-depth-meta",children:"Live = human-approved questions. Transfer = a question that applies the skill in a varied/contextual form rather than the core taught form."}),e.jsx("div",{className:"qa-table-container",children:e.jsxs("table",{className:"qa-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Year band"}),e.jsx("th",{children:"Live questions"}),e.jsx("th",{children:"Micro-skills"}),e.jsx("th",{children:"Skills with transfer item"})]})}),e.jsx("tbody",{children:r.map(c=>e.jsx(Ye,{summary:a[c]},c))})]})}),e.jsx("h4",{className:"qa-depth-thin-title",children:"Thinnest micro-skills across all bands"}),e.jsx("ul",{className:"qa-depth-thin-list",children:_.map(c=>e.jsx(X,{entry:c,band:c.band},`${c.band}:${c.microSkillId}`))})]})}const s=a[i];if(!s)return e.jsxs("div",{className:"qa-depth-section",children:[e.jsx("h3",{className:"qa-section-title",children:"Bank depth & transfer coverage"}),e.jsxs("p",{className:"qa-depth-empty",children:["No approved (live) questions yet for ",w[i]||i,"."]})]});const d=s.microSkills.slice(0,z);return e.jsxs("div",{className:"qa-depth-section",children:[e.jsxs("h3",{className:"qa-section-title",children:["Bank depth & transfer coverage — ",w[i]||i]}),e.jsxs("div",{className:"qa-depth-stat-row",children:[e.jsxs("div",{className:"qa-depth-stat",children:[e.jsx("span",{className:"qa-depth-stat-value",children:s.liveTotal.toLocaleStr
1ing()}),e.jsx("span",{className:"qa-depth-stat-label",children:"Live questions"})]}),e.jsxs("div",{className:"qa-depth-stat",children:[e.jsx("span",{className:"qa-depth-stat-value",children:s.microSkillCount}),e.jsx("span",{className:"qa-depth-stat-label",children:"Micro-skills"})]}),e.jsxs("div",{className:"qa-depth-stat",children:[e.jsxs("span",{className:"qa-depth-stat-value",children:[s.microSkillsWithTransfer,"/",s.microSkillCount]}),e.jsx("span",{className:"qa-depth-stat-label",children:"Skills with a transfer item"})]})]}),e.jsx("h4",{className:"qa-depth-thin-title",children:"Thinnest micro-skills — authoring priorities"}),e.jsx("ul",{className:"qa-depth-thin-list",children:d.map(_=>e.jsx(X,{entry:_},_.microSkillId))})]})},Z="smartmaths_orientation_dismissed";function Ie(){const[i,t]=M.useState(()=>{try{return localStorage.getItem(Z)==="1"}catch{return!1}});return i?null:e.jsxs("div",{className:"qa-orientation-card",children:[e.jsxs("div",{className:"qa-orientation-header",children:[e.jsx("span",{className:"qa-orientation-title",children:"First time here? Here's how it works."}),e.jsx("button",{className:"qa-orientation-dismiss",onClick:()=>{localStorage.setItem(Z,"1"),t(!0)},type:"button","aria-label":"Dismiss",children:"✕ Got it"})]}),e.jsxs("div",{className:"qa-orientation-actions",children:[e.jsxs("div",{className:"qa-orientation-action qa-orientation-approve",children:[e.jsx("span",{className:"qa-orientation-action-label",children:"Approve"}),e.jsx("span",{className:"qa-orientation-action-desc",children:"The question is correct, clearly worded, and right for the year group."})]}),e.jsxs("div",{className:"qa-orientation-action qa-orientation-edit",children:[e.jsx("span",{className:"qa-orientation-action-label",children:"Needs edit"}),e.jsx("span",{className:"qa-orientation-action-desc",children:"Something is fixable — the wording is off, a hint is misleading, or an option is confusing."})]}),e.jsxs("div",{className:"qa-orientation-action qa-orientation-flag",children:[e.jsx("span",{className:"qa-orientation-action-label",children:"Flag"}),e.jsx("span",{className:"qa-orientation-action-desc",children:"Something is seriously wrong — the answer is incorrect, or the question doesn't make sense."})]})]}),e.jsxs("p",{className:"qa-orientation-tip",children:["Use the Notes box to explain your decision. Keyboard shortcuts: ",e.jsx("strong",{children:"A"})," approve · ",e.jsx("strong",{children:"E"})," needs edit · ",e.jsx("strong",{children:"F"})," flag · ",e.jsx("strong",{children:"→"})," next"]})]})}const Le=[{value:"reception",label:"Reception"},{value:"year_1",label:"Year 1"},{value:"year_2",label:"Year 2"},{value:"year_3",label:"Year 3"},{value:"year_4",label:"Year 4"},{value:"year_5",label:"Year 5"},{value:"year_6",label:"Year 6"}],$e=({bankStats:i,reviewStats:t,allQuestions:a,events:r,onDrillToQuestions:s})=>{const[d,_]=M.useState("all"),c=M.useMemo(()=>(d==="all"?a:a.filter(P=>P.typical_year_band_id===d)).filter(P=>P.status==="draft").length,[a,d]),o=M.useMemo(()=>{if(d==="all")return{bankStats:i,reviewStats:t};const u={total:i.byYearBand[d]||0,byYearBand:{[d]:i.byYearBand[d]||0},byStrand:{}};a.forEach(m=>{m.typical_year_band_id===d&&(u.byStrand[m.strand_id]=(u.byStrand[m.strand_id]||0)+1)});const P=a.filter(m=>m.typical_year_band_id===d);r.filter(m=>m.year_band===d);const p={totalQuestions:P.length,totalReviewed:P.filter(m=>m.status!=="unreviewed"&&m.status!=="draft").length,totalApproved:P.filter(m=>m.status==="approved").length,totalFlagged:P.filter(m=>m.status==="flagged").length,totalNeedsEdit:P.filter(m=>m.status==="needs_edit").length,totalAiAwaiting:P.filter(m=>m.status==="agent_reviewed").length,totalDrafts:P.filter(m=>m.status==="draft"||m.status==="unreviewed").length,reviewedByYearBand:{[d]:P.filter(m=>m.status!=="unreviewed"&&m.status!=="draft").length},reviewedByStrand:{},reviewedByDimension:{}};return P.forEach(m=>{m.status!=="unreviewed"&&(p.reviewedByStrand[m.strand_id]=(p.reviewedByStrand[m.strand_id]||0)+1)}),{bankStats:u,reviewStats:p}},[d,i,t,a,r]);return e.jsxs("div",{className:"qa-overview",children:[e.jsx(Ie,{}),e.jsxs("div",{className:"qa-overview-filters",children:[e.jsx("span",{className:"qa-overview-filter-label",children:"Year group"}),e.jsxs("div",{className:"qa-year-button-group",role:"group","aria-label":"Filter by year group",children:[e.jsx("button",{type:"button",className:`qa-year-button${d==="all"?" is-active":""}`,onClick:()=>_("all"),"aria-pressed":d==="all",children:"All"}),Le.map(u=>e.jsx("button",{type:"button",className:`qa-year-button${d===u.value?" is-active":""}`,onClick:()=>_(u.value),"aria-pressed":d===u.value,children:u.label},u.value))]})]}),c>0&&e.jsxs("div",{className:"qa-queue-cta",children:[e.jsxs("div",{className:"qa-queue-cta-text",children:[e.jsxs("strong",{children:[c," question",c!==1?"s":""," ready for review"]}),e.jsx("span",{className:"qa-queue-cta-sub",children:"New or AI-checked questions waiting for a human eye"})]}),e.jsx("button",{className:"qa-queue-cta-btn",onClick:()=>{const u=a.filter(P=>P.status==="draft"&&(d==="all"||P.typical_year_band_id===d)).map(P=>P.id);sessionStorage.setItem("smartmaths_review_queue",JSON.stringify(u)),window.location.hash="#question-preview?from=qa-dashboard"},children:"Start reviewing →"})]}),e.jsx(xe,{totalQuestions:o.bankStats.total,totalApproved:o.reviewStats.totalApproved,totalAiAwaiting:o.reviewStats.totalAiAwaiting,totalNeedsAttention:o.reviewStats.totalFlagged+o.reviewStats.totalNeedsEdit,totalDrafts:o.reviewStats.totalDrafts}),e.jsx(Oe,{year:d,onDrillToQuestions:s}),e.jsx("div",{className:"qa-coverage-link-row",children:e.jsx("a",{className:"qa-coverage-link",href:"#coverage",children:"Open full coverage view — QC checks, suitability flags, reviewed/unreviewed filters →"})}),e.jsx(Re,{year:d,allQuestions:a}),e.jsx(je,{bankStats:o.bankStats,reviewStats:o.reviewStats})]})};function Ke(i){const t=new Date;switch(i){case"today":return new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime();case"7d":return t.getTime()-10080*60*1e3;case"30d":return t.getTime()-720*60*60*1e3;case"month":return new Date(t.getFullYear(),t.getMonth(),1).getTime();default:return null}}const ue="smartmaths_qa_detail_filters",ee="smartmaths_qa_drilldown";function We(){try{const i=localStorage.getItem(ue);return i?JSON.parse(i):{}}
1catch{return{}}}function He(){try{const i=sessionStorage.getItem(ee);return i?(sessionStorage.removeItem(ee),JSON.parse(i)):null}catch{return null}}const Je=({questions:i})=>{const t=M.useMemo(()=>We(),[]),a=M.useMemo(()=>He(),[]),[r,s]=M.useState(t.search??""),[d,_]=M.useState(t.strand??"all"),[c,o]=M.useState(a?.year??t.year??"all"),[u,P]=M.useState(t.status??"agent_reviewed"),[p,m]=M.useState(t.phase??"all"),[l,h]=M.useState(a?.microSkill??t.microSkill??"all"),[v,q]=M.useState(a?.band!=null?String(a.band):t.band??"all"),[N,E]=M.useState(t.dateField??"updated"),[f,F]=M.useState(t.datePreset??"7d"),[k,G]=M.useState(t.customDate??""),[y,O]=M.useState(t.neverReviewed??!1),[pe,C]=M.useState(null),[g,be]=M.useState(a),he=M.useMemo(()=>Ne(),[]);M.useEffect(()=>{localStorage.setItem(ue,JSON.stringify({search:r,strand:d,year:c,status:u,phase:p,microSkill:l,band:v,dateField:N,datePreset:f,customDate:k,neverReviewed:y}))},[r,d,c,u,p,l,v,N,f,k,y]);const ve=[{id:"all",label:"All Strands"},{id:"number_place_value",label:"Number & Place Value"},{id:"addition_subtraction",label:"Addition & Subtraction"},{id:"multiplication_division",label:"Multiplication & Division"},{id:"fractions_decimals_percentages",label:"Fractions, Decimals & Pct"},{id:"ratio_proportion",label:"Ratio & Proportion"},{id:"measurement",label:"Measurement"},{id:"geometry",label:"Geometry"},{id:"data_statistics",label:"Data & Statistics"}],Qe=[{id:"all",label:"All Year Bands"},{id:"reception",label:"Reception"},{id:"year_1",label:"Year 1"},{id:"year_2",label:"Year 2"},{id:"year_3",label:"Year 3"},{id:"year_4",label:"Year 4"},{id:"year_5",label:"Year 5"},{id:"year_6",label:"Year 6"}],fe=[{id:"all",label:"All Statuses"},{id:"not_approved",label:"Needs Review"},{id:"draft",label:"Draft"},{id:"agent_reviewed",label:"AI Approved"},{id:"approved",label:"Human Approved"},{id:"needs_edit",label:"Needs Work"},{id:"flagged",label:"Flagged"}],S=M.useMemo(()=>{const n=r.toLowerCase();let Q=null;return f==="custom"&&k?Q=new Date(k).getTime():f!=="any"&&(Q=Ke(f)),i.filter(b=>{const A=!n||b.id.toLowerCase().includes(n)||b.micro_skill_id.toLowerCase().includes(n)||b.prompt.stem.toLowerCase().includes(n),j=d==="all"||b.strand_id===d,Y=c==="all"||b.typical_year_band_id===c,R=u==="all"||(u==="not_approved"?b.status!=="approved":b.status===u),I=p==="all"||b.micro_skill_id.includes(`.${p}.`),L=l==="all"||b.micro_skill_id===l,$=v==="all"||(v==="missing"?b.complexity_band==null:b.complexity_band===Number(v));if(y)return A&&j&&Y&&R&&I&&L&&$&&!b.reviewed_at;let K=!0;if(Q!==null){const W=N==="reviewed"?b.reviewed_at:N==="updated"?b.updated_at:b.created_at;K=W?new Date(W).getTime()>=Q:!1}return A&&j&&Y&&R&&I&&L&&$&&K})},[i,r,d,c,u,p,l,v,N,f,k,y]),ge=M.useMemo(()=>{const n=new Set;return i.forEach(Q=>{d!=="all"&&Q.strand_id!==d||c!=="all"&&Q.typical_year_band_id!==c||n.add(Q.micro_skill_id)}),Array.from(n).sort()},[i,d,c]),B=f!=="any"||y,Se=()=>{be(null),h("all"),q("all")};return e.jsxs("div",{className:"qa-detail-list",children:[g&&(g.microSkill||g.band!=null)&&e.jsxs("div",{className:"qa-drilldown-banner",children:[e.jsx("span",{className:"qa-drilldown-icon","aria-hidden":!0,children:"🎯"}),e.jsxs("span",{children:["Drilled in from coverage heatmap:",g.microSkill&&e.jsxs(e.Fragment,{children:[" ",e.jsx("strong",{children:g.microSkill})]}),g.band!=null&&e.jsxs(e.Fragment,{children:[" · ",e.jsxs("strong",{children:["Band ",g.band]})]}),g.year&&e.jsxs(e.Fragment,{children:[" · ",g.year.replace(/_/g," ")]})," ","— showing ",S.length," item",S.length===1?"":"s"]}),e.jsx("button",{type:"button",className:"qa-drilldown-clear",onClick:Se,children:"Clear drill-down"})]}),e.jsxs("div",{className:"qa-filter-bar",children:[e.jsx("input",{type:"text",placeholder:"Search ID, micro-skill or stem…",value:r,onChange:n=>s(n.target.value),className:"qa-search-input"}),e.jsx("select",{value:d,onChange:n=>_(n.target.value),children:ve.map(n=>e.jsx("option",{value:n.id,children:n.label},n.id))}),e.jsx("select",{value:c,onChange:n=>o(n.target.value),children:Qe.map(n=>e.jsx("option",{value:n.id,children:n.label},n.id))}),e.jsx("select",{value:u,onChange:n=>P(n.target.value),children:fe.map(n=>e.jsx("option",{value:n.id,children:n.label},n.id))}),e.jsxs("select",{value:p,onChange:n=>m(n.target.value),children:[e.jsx("option",{value:"all",children:"All Phases"}),e.jsx("option",{value:"P1",children:"Phase 1"}),e.jsx("option",{value:"P2",children:"Phase 2"}),e.jsx("option",{value:"P3",children:"Phase 3"}),e.jsx("option",{value:"P4",children:"Phase 4"}),e.jsx("option",{value:"P5",children:"Phase 5"})]}
1),e.jsxs("select",{value:l,onChange:n=>h(n.target.value),className:l!=="all"?"qa-filter-active":"",title:"Filter by micro-skill",children:[e.jsx("option",{value:"all",children:"All Micro-skills"}),ge.map(n=>e.jsx("option",{value:n,children:n},n))]}),e.jsxs("select",{value:v,onChange:n=>q(n.target.value),className:v!=="all"?"qa-filter-active":"",title:"Filter by complexity band",children:[e.jsx("option",{value:"all",children:"All Bands"}),e.jsx("option",{value:"1",children:"Band 1"}),e.jsx("option",{value:"2",children:"Band 2"}),e.jsx("option",{value:"3",children:"Band 3"}),e.jsx("option",{value:"4",children:"Band 4"}),e.jsx("option",{value:"5",children:"Band 5"}),e.jsx("option",{value:"missing",children:"No band"})]}),e.jsxs("button",{className:"qa-review-mode-btn",onClick:()=>{sessionStorage.setItem("smartmaths_review_queue",JSON.stringify(S.map(n=>n.id))),window.location.hash="#question-preview?from=qa-dashboard"},title:`Open Review Mode for ${S.length} filtered questions`,children:["Review ",S.length>0?`${S.length} questions`:""]})]}),e.jsxs("div",{className:"qa-filter-bar qa-filter-bar--date",children:[e.jsxs("div",{className:"qa-date-field-toggle",children:[e.jsx("button",{className:`qa-date-field-btn ${N==="reviewed"?"is-active":""}`,onClick:()=>E("reviewed"),type:"button",children:"Reviewed"}),e.jsx("button",{className:`qa-date-field-btn ${N==="created"?"is-active":""}`,onClick:()=>E("created"),type:"button",children:"Created"}),e.jsx("button",{className:`qa-date-field-btn ${N==="updated"?"is-active":""}`,onClick:()=>E("updated"),type:"button",children:"Updated"})]}),e.jsxs("select",{value:f,onChange:n=>{F(n.target.value),O(!1)},className:B&&!y?"qa-filter-active":"",children:[e.jsx("option",{value:"any",children:"Any time"}),e.jsx("option",{value:"today",children:"Today"}),e.jsx("option",{value:"7d",children:"Last 7 days"}),e.jsx("option",{value:"30d",children:"Last 30 days"}),e.jsx("option",{value:"month",children:"This month"}),e.jsx("option",{value:"custom",children:"Custom date…"})]}),f==="custom"&&e.jsx("input",{type:"date",value:k,onChange:n=>G(n.target.value),className:k?"qa-filter-active":"",style:{padding:"0.5rem 0.75rem",border:"1px solid #d1d5db",borderRadius:"0.375rem",fontFamily:"inherit",fontSize:"0.875rem"}}),e.jsxs("label",{className:"qa-checkbox-label",style:{marginLeft:"0.5rem"},children:[e.jsx("input",{type:"checkbox",checked:y,onChange:n=>{O(n.target.checked),n.target.checked&&F("any")}}),"Never reviewed"]}),B&&e.jsx("button",{className:"qa-clear-date-btn",onClick:()=>{F("any"),G(""),O(!1)},type:"button",children:"Clear"}),e.jsxs("span",{className:"qa-result-count",children:[S.length," questions"]})]}),e.jsx("div",{className:"qa-table-container",children:e.jsxs("table",{className:"qa-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"ID"}),e.jsx("th",{children:"Status"}),e.jsx("th",{children:"Strand"}),e.jsx("th",{children:"Year"}),e.jsx("th",{children:"Stem"}),e.jsx("th",{children:"Reviewed"}),e.jsx("th",{children:"Created"}),e.jsx("th",{children:"Issues"})]})}),e.jsxs("tbody",{children:[S.map(n=>{const Q=pe===n.id,b=Q?he.byId.get(n.id):null;return e.jsxs(Ae.Fragment,{children:[e.jsxs("tr",{onClick:()=>{window.location.hash=`#question-preview?q=${n.id}&from=qa-dashboard`},onMouseEnter:()=>C(n.id),onMouseLeave:()=>C(null),style:{cursor:"pointer",background:Q?"#f0f7ff":void 0},children:[e.jsx("td",{style:{fontWeight:600},children:n.id}),e.jsx("td",{children:e.jsx("span",{className:`status-badge status-${n.status.replace(/_/g,"-")}`,title:ke[n.status]??n.status,children:ye(n.status)})}),e.jsx("td",{children:n.strand_id.replace(/_/g," ")}),e.jsx("td",{children:n.typical_year_band_id.replace(/_/g," ")}),e.jsx("td",{className:"qa-table-stem-cell",title:n.prompt.stem,children:n.prompt.stem.length>60?n.prompt.stem.substring(0,60)+"…":n.prompt.stem}),e.jsxs("td",{children:[n.reviewed_at?new Date(n.reviewed_at).toLocaleDateString():e.jsx("span",{className:"subtle",children:"—"}),n.reviewer&&e.jsx("div",{className:"subtle",children:n.reviewer})]}),e.jsx("td",{className:"subtle",children:n.created_at?new Date(n.created_at).toLocaleDateString():"—"}),e.jsx("td",{children:n.issues_count>0?n.issues_count:e.jsx("span",{className:"subtle",children:"—"})})]}),Q&&e.jsx("tr",{className:"qa-row-preview",children:e.jsx("td",{colSpan:8,children:e.jsxs("div",{className:"qa-row-preview-inner",children:[e.jsx("div",{className:"qa-row-preview-stem",children:n.prompt.stem}),b&&b.answer_spec.kind==="select"&&e.jsx("div",{className:"qa-row-preview-options",children:b.answer_spec.options.map(A=>{const j=b.answer_spec.correct_option_ids.includes(A.id);return e.jsxs("span",{className:`qa-row-opt ${j?"qa-row-opt-correct":"qa-row-opt-wrong"}`,children:[j?"✓":"✗"," ",A.label]},A.id)})}),b&&b.answer_spec.kind==="free_response"&&e.jsx("div",{className:"qa-row-preview-options",children:e.jsxs("span",{className:"qa-row-opt qa-row-opt-correct",children:["Answer: ",b.answer_spec.accepted_values.join(", ")
1]})}),e.jsxs("div",{className:"qa-row-preview-meta",children:[n.micro_skill_id," · ",n.typical_year_band_id.replace(/_/g," ")," · ",b?.difficulty_tier??""," · rank ",b?.difficulty_rank??""]}),e.jsx("button",{className:"qa-row-preview-open",onClick:A=>{A.stopPropagation(),window.location.hash=`#question-preview?q=${n.id}`},type:"button",children:"Open in review →"})]})})})]},n.id)}),S.length===0&&e.jsx("tr",{children:e.jsx("td",{colSpan:8,style:{textAlign:"center",padding:"2rem",color:"#6b7280"},children:"No questions match your filters."})})]})]})})]})},Ue=({events:i})=>e.jsxs("div",{className:"qa-change-log",children:[e.jsx("h2",{className:"qa-section-title",children:"Recent Review Activity"}),e.jsxs("div",{className:"qa-timeline",children:[i.map((t,a)=>e.jsxs("div",{className:"qa-timeline-item",children:[e.jsx("div",{className:"qa-timeline-marker",children:e.jsx("div",{className:`status-dot status-${t.outcome.replace("_","-")}`})}),e.jsxs("div",{className:"qa-timeline-content",children:[e.jsxs("div",{className:"qa-timeline-header",children:[e.jsx("strong",{children:t.question_id}),e.jsxs("span",{className:"qa-timeline-outcome",children:["marked as ",e.jsx("span",{className:`status-text status-${t.outcome.replace("_","-")}`,children:t.outcome.replace("_"," ")})]}),e.jsx("span",{className:"qa-timeline-time",children:new Date(t.reviewed_at).toLocaleString()})]}),e.jsxs("div",{className:"qa-timeline-meta",children:[e.jsxs("span",{children:["By ",t.reviewer]}),e.jsx("span",{children:"•"}),e.jsx("span",{children:t.strand.replace(/_/g," ")}),e.jsx("span",{children:"•"}),e.jsx("span",{children:t.year_band.replace("_"," ")})]}),t.dimensions_checked&&t.dimensions_checked.length>0&&e.jsxs("div",{className:"qa-timeline-dimensions",children:[e.jsx("label",{children:"Checked:"}),t.dimensions_checked.map(r=>e.jsx("span",{className:"qa-dimension-pill",children:r.replace(/_/g," ")},r))]}),t.issues_found&&t.issues_found.length>0&&e.jsxs("div",{className:"qa-timeline-issues",children:[e.jsx("label",{children:"Issues:"}),e.jsx("ul",{children:t.issues_found.map((r,s)=>e.jsx("li",{children:typeof r=="string"?r:r.description},s))})]}),t.notes&&e.jsxs("div",{className:"qa-timeline-notes",children:[e.jsx("label",{children:"Notes:"}),e.jsx("p",{children:t.notes})]})]})]},a)),i.length===0&&e.jsx("div",{className:"qa-placeholder",children:"No review events found in the log."})]})]});function ze(i,t){return i.json_status==="deleted"?{status:"deleted"}:i.json_status==="draft"?{status:"draft"}:i.json_status==="agent_reviewed"?{status:"agent_reviewed",reviewer:i.json_reviewed_by,reviewed_at:i.json_reviewed_at}:t?{status:t.outcome,reviewed_at:t.reviewed_at,reviewer:t.reviewer}:i.json_reviewed_by?{status:i.json_status||"approved",reviewed_at:i.json_reviewed_at,reviewer:i.json_reviewed_by}:i.json_status==="flagged"?{status:"flagged"}:i.json_status==="needs_edit"?{status:"needs_edit"}:i.json_status==="approved"?{status:"approved",reviewer:i.json_reviewed_by,reviewed_at:i.json_reviewed_at}:{status:"unreviewed"}}const D=1e3;async function Xe(i,t=3,a=500){let r;for(let s=0;s<t;s++)try{return await i()}catch(d){r=d,s<t-1&&await new Promise(_=>setTimeout(_,a*(s+1)))}throw r}async function Pe(i){const t=[];let a=0;for(let r=0;r<100;r++){const s=await Xe(()=>i(a));if(s.length===0||(t.push(...s),s.length<D))break;a+=D}return t}function ie(i,t){const a=i.filter(l=>l.json_status!=="deleted"),r={total:a.length,byYearBand:{},byStrand:{}};a.forEach(l=>{r.byStrand[l.strand_id]=(r.byStrand[l.strand_id]||0)+1,r.byYearBand[l.typical_year_band_id]=(r.byYearBand[l.typical_year_band_id]||0)+1});const s={},d={},_={};t.forEach(l=>{s[l.question_id]||(s[l.question_id]=l),Array.isArray(l.issues_found)&&(d[l.question_id]=(d[l.question_id]||0)+l.issues_found.length),l.dimensions_checked?.forEach(h=>{_[h]=(_[h]||0)+1})});const o=a.map(l=>{const{status:h,reviewed_at:v,reviewer:q}=ze(l,s[l.id]);return{...l,status:h,reviewed_at:v,reviewer:q,issues_count:d[l.id]||0}}).filter(l=>l.status!=="deleted"),u=l=>l.status!=="unreviewed"&&l.status!=="draft",P={},p={};o.filter(u).forEach(l=>{P[l.typical_year_band_id]=(P[l.typical_year_band_id]||0)+1,p[l.strand_id]=(p[l.strand_id]||0)+1});const m={totalQuestions:r.total,totalReviewed:o.filter(u).length,totalApproved:o.filter(l=>l.status==="approved").length,totalFlagged:o.filter(l=>l.status==="flagged").length,totalNeedsEdit:o.filter(l=>l.status==="needs_edit").length,totalAiAwaiting:o.filter(l=>l.status==="agent_reviewed").length,totalDrafts:o.filter(l=>l.status==="draft"||l.status==="unreviewed").length,reviewedByYearBand:P,reviewedByStrand:p,reviewedByDimension:_};return{bankStats:r,reviewStats:m,allQuestions:o}}async function Ze(){if(!V)throw new Error("Supabase is not configured.");return(await Pe(async t=>{const{data:a,error:r}=await V.from("questions").select("id, strand_id, micro_skill_id, typical_year_band_id, status, reviewed_by, reviewed_at, created_at, updated_at, question_family, prompt:payload->prompt, complexity_band:payload->complexity_band, form_variant:payload->form_variant").neq("status","deleted").order("id",{ascending:!0}).range(t,t+D-1);if(r)throw r;return a??[]})).map(t=>({id:t.id,strand_id:t.strand_id,typical_year_band_id:t.typical_year_band_id,micro_skill_id:t.micro_skill_id,prompt:t.prompt||{stem:""},json_status:t.status,json_reviewed_by:t.reviewed_by,json_reviewed_at:t.reviewed_at,created_at:t.created_at,updated_at:t.updated_at,complexity_band:typeof t.complexity_band=="number"?t.complexity_band:void 0,question_family:t.question_family||void 0,form_variant:typeof t.form_variant=="string"?t.form_variant:void 0}))}async function ei(){if(!V)return[];try{return await Pe(async i=>{const{data:t,error:a}=await V.from("review_events").select("question_id, strand, year_band, outcome, reviewer, reviewed_at, dimensions_checked, issues_found, notes").order("reviewed_at",{ascending:!1}).range(i,i+D-1);if(a)throw a;return t??[]})}catch{return[]}}let x=null;
1function ii(){const[i,t]=M.useState(!x),[a,r]=M.useState(null),[s,d]=M.useState(()=>x?ie(x.questions,x.events):null),[_,c]=M.useState(()=>x?.events??[]);M.useEffect(()=>{let p=!0;const m=!!x;async function l(){m||(t(!0),r(null));try{if(!V)throw new Error("Supabase is not configured. The QA dashboard requires a live Supabase connection.");const[h,v]=await Promise.all([Ze(),ei()]);if(!p)return;if(h.length===0)throw new Error("Supabase returned no questions. Check your connection and that the questions table is seeded.");x={questions:h,events:v},d(ie(h,v)),c(v),r(null)}catch(h){if(!p)return;m||r(h?.message||"An error occurred while fetching data.")}finally{p&&t(!1)}}return l(),()=>{p=!1}},[]);const o=s?.bankStats??null,u=s?.reviewStats??null,P=s?.allQuestions??[];return{loading:i,error:a,dataSource:"supabase",bankStats:o,reviewStats:u,allQuestions:P,events:_}}const Me="smartmaths_qa_active_tab";function ti(){try{const i=localStorage.getItem(Me);if(i==="overview"||i==="questions"||i==="log")return i}catch{}return"questions"}const oi=({onBackHome:i,onOpenWexReview:t})=>{const[a,r]=M.useState(ti),s=p=>{try{localStorage.setItem(Me,p)}catch{}r(p)},{loading:d,error:_,bankStats:c,reviewStats:o,allQuestions:u,events:P}=ii();return e.jsxs("div",{className:"qa-dashboard-container",children:[e.jsxs("header",{className:"qa-dashboard-header",children:[e.jsx("button",{className:"qa-dashboard-back-button",onClick:i,children:"← Back"}),e.jsx("h1",{children:"QA Dashboard"}),!d&&e.jsx("span",{className:"qa-source-badge",children:"Live"}),e.jsxs("nav",{className:"qa-dashboard-nav",children:[e.jsx("button",{className:`qa-nav-item ${a==="overview"?"is-active":""}`,onClick:()=>s("overview"),children:"Overview"}),e.jsx("button",{className:`qa-nav-item ${a==="questions"?"is-active":""}`,onClick:()=>s("questions"),children:"Questions"}),e.jsx("button",{className:`qa-nav-item ${a==="log"?"is-active":""}`,onClick:()=>s("log"),children:"Change Log"}),t&&e.jsx("button",{className:"qa-nav-item",onClick:t,title:"Review the worked-example demos",children:"Worked examples ↗"})]})]}),e.jsxs("div",{className:"qa-dashboard-content",children:[d&&e.jsx("div",{className:"qa-loading",children:"Loading..."}),_&&!d&&e.jsx("div",{className:"qa-warning",children:_}),!d&&e.jsxs(e.Fragment,{children:[a==="overview"&&c&&o&&e.jsx($e,{bankStats:c,reviewStats:o,allQuestions:u,events:P,onDrillToQuestions:()=>s("questions")}),a==="questions"&&e.jsx(Je,{questions:u}),a==="log"&&e.jsx(Ue,{events:P})]})]})]})};export{oi as QaDashboard};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.