@univerjs/sheets-conditional-formatting 0.17.0 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/lib/cjs/facade.js +1 -1
  2. package/lib/cjs/index.js +1 -1
  3. package/lib/es/facade.js +1 -1909
  4. package/lib/es/index.js +1 -1999
  5. package/lib/facade.js +1 -1909
  6. package/lib/index.js +1 -1999
  7. package/lib/types/assets/icon-map.d.ts +79 -0
  8. package/lib/types/base/const.d.ts +16 -1
  9. package/lib/types/commands/commands/add-cf.command.d.ts +18 -3
  10. package/lib/types/commands/commands/clear-range-cf.command.d.ts +16 -1
  11. package/lib/types/commands/commands/clear-worksheet-cf.command.d.ts +16 -1
  12. package/lib/types/commands/commands/delete-cf.command.d.ts +16 -1
  13. package/lib/types/commands/commands/move-cf.command.d.ts +17 -2
  14. package/lib/types/commands/commands/set-cf.command.d.ts +17 -2
  15. package/lib/types/commands/mutations/add-conditional-rule.mutation.d.ts +18 -3
  16. package/lib/types/commands/mutations/delete-conditional-rule.mutation.d.ts +16 -1
  17. package/lib/types/commands/mutations/formula-mark-dirty.mutation.d.ts +16 -1
  18. package/lib/types/commands/mutations/move-conditional-rule.mutation.d.ts +17 -2
  19. package/lib/types/commands/mutations/set-conditional-rule.mutation.d.ts +17 -2
  20. package/lib/types/facade/f-conditional-formatting-builder.d.ts +18 -2
  21. package/lib/types/facade/f-enum.d.ts +15 -0
  22. package/lib/types/facade/f-range.d.ts +16 -1
  23. package/lib/types/facade/f-worksheet.d.ts +16 -1
  24. package/lib/types/models/calculate-unit-v2/__test__/test.util.d.ts +24 -8
  25. package/lib/types/models/calculate-unit-v2/base-calculate-unit.d.ts +18 -3
  26. package/lib/types/models/calculate-unit-v2/color-scale-calculate-unit.d.ts +17 -1
  27. package/lib/types/models/calculate-unit-v2/data-bar-calculate-unit.d.ts +17 -1
  28. package/lib/types/models/calculate-unit-v2/highlight-cell-calculate-unit.d.ts +19 -3
  29. package/lib/types/models/calculate-unit-v2/icon-set-calculate-unit.d.ts +19 -3
  30. package/lib/types/models/calculate-unit-v2/utils.d.ts +19 -3
  31. package/lib/types/models/conditional-formatting-rule-model.d.ts +21 -6
  32. package/lib/types/models/conditional-formatting-view-model.d.ts +16 -1
  33. package/lib/types/models/type.d.ts +18 -3
  34. package/lib/types/plugin.d.ts +16 -1
  35. package/lib/types/render/data-bar.render.d.ts +18 -2
  36. package/lib/types/render/icon.render.d.ts +18 -2
  37. package/lib/types/render/type.d.ts +17 -2
  38. package/lib/types/services/conditional-formatting-formula.service.d.ts +18 -2
  39. package/lib/types/services/conditional-formatting.service.d.ts +17 -2
  40. package/lib/umd/facade.js +1 -1
  41. package/lib/umd/index.js +1 -1
  42. package/package.json +10 -9
  43. package/lib/types/assets/icon-map.json.d.ts +0 -82
  44. package/lib/types/models/calculate-unit-v2/__test__/base-calculate.spec.d.ts +0 -16
  45. package/lib/types/models/calculate-unit-v2/__test__/calculate.color.spec.d.ts +0 -16
  46. package/lib/types/models/calculate-unit-v2/__test__/calculate.databar.spec.d.ts +0 -16
  47. package/lib/types/models/calculate-unit-v2/__test__/calculate.highlight.spec.d.ts +0 -16
  48. package/lib/types/utils/__test__/anchor.spec.d.ts +0 -16
package/lib/umd/index.js CHANGED
@@ -1 +1 @@
1
- (function(f,d){typeof exports=="object"&&typeof module<"u"?d(exports,require("@univerjs/core"),require("@univerjs/sheets"),require("rxjs"),require("@univerjs/engine-formula"),require("rxjs/operators"),require("@univerjs/engine-render")):typeof define=="function"&&define.amd?define(["exports","@univerjs/core","@univerjs/sheets","rxjs","@univerjs/engine-formula","rxjs/operators","@univerjs/engine-render"],d):(f=typeof globalThis<"u"?globalThis:f||self,d(f.UniverSheetsConditionalFormatting={},f.UniverCore,f.UniverSheets,f.rxjs,f.UniverEngineFormula,f.rxjs.operators,f.UniverEngineRender))})(this,(function(f,d,F,J,E,i2,Z){"use strict";var A0=Object.defineProperty;var y0=(f,d,F)=>d in f?A0(f,d,{enumerable:!0,configurable:!0,writable:!0,value:F}):f[d]=F;var w=(f,d,F)=>y0(f,typeof d!="symbol"?d+"":d,F);const c2="SHEET_CONDITIONAL_FORMATTING_PLUGIN";var T=(s=>(s.beginsWith="beginsWith",s.endsWith="endsWith",s.containsText="containsText",s.notContainsText="notContainsText",s.equal="equal",s.notEqual="notEqual",s.containsBlanks="containsBlanks",s.notContainsBlanks="notContainsBlanks",s.containsErrors="containsErrors",s.notContainsErrors="notContainsErrors",s))(T||{}),B=(s=>(s.today="today",s.yesterday="yesterday",s.tomorrow="tomorrow",s.last7Days="last7Days",s.thisMonth="thisMonth",s.lastMonth="lastMonth",s.nextMonth="nextMonth",s.thisWeek="thisWeek",s.lastWeek="lastWeek",s.nextWeek="nextWeek",s))(B||{}),p=(s=>(s.greaterThan="greaterThan",s.greaterThanOrEqual="greaterThanOrEqual",s.lessThan="lessThan",s.lessThanOrEqual="lessThanOrEqual",s.notBetween="notBetween",s.between="between",s.equal="equal",s.notEqual="notEqual",s))(p||{}),S=(s=>(s.highlightCell="highlightCell",s.dataBar="dataBar",s.colorScale="colorScale",s.iconSet="iconSet",s))(S||{}),y=(s=>(s.uniqueValues="uniqueValues",s.duplicateValues="duplicateValues",s.rank="rank",s.text="text",s.timePeriod="timePeriod",s.number="number",s.average="average",s.formula="formula",s))(y||{}),x=(s=>(s.num="num",s.min="min",s.max="max",s.percent="percent",s.percentile="percentile",s.formula="formula",s))(x||{});const Y2="#fff",K2="#000000",X2=()=>({cfId:void 0,ranges:[],stopIfTrue:!1,rule:{type:"highlightCell",subType:"text",operator:"containsText"}}),J2=(s,r)=>{switch(s){case"text":{if(["beginsWith","containsText","endsWith","equal","notContainsText","notEqual"].includes(r))return"";break}case"number":return["between","notBetween"].includes(r)?[10,100]:10}return""},z2=(s,r)=>{switch(s){case"formula":return"=";case"max":case"min":return"";case"percent":case"percentile":case"num":return r!==void 0?r:10}return""},O=(s,r,n)=>{if(!r)return null;const e=r.findIndex(t=>n(t)===s.id);if(e<0)return null;switch(s.type){case"after":return e+1;case"before":return e-1;case"self":return e}},w2=(s,r,n,e)=>{if(!n)return null;const t=O(s,n,e);let i=O(r,n,e);if(t===null||i===null||t===i)return;const a=n.splice(t,1)[0];switch(t<i&&(i=O(r,n,e)),r.type){case"before":{n.splice(i+1,0,a);break}case"self":case"after":{n.splice(i,0,a);break}}},d2=(s,r,n,e)=>{if(s.type==="after"&&["after","before"].includes(r.type))return[s,r];const t={...s},i={...r};if(t.type!=="after"){const a=O(t,n,e);if(a===null)return null;if(a-1<0){const o=n[a+1];if(o)t.id=e(o),t.type="before";else return null}else{const o=e(n[a-1]);t.id=o,t.type="after"}}if(!["after","before"].includes(i.type)){const a=O(i,n,e);if(a===null)return null;if(a===0)i.type="before";else if(a-1>=0){const o=e(n[a-1]);i.id=o,i.type="after"}else if(a+1<=n.length-1){const o=e(n[a+1]);i.id=o,i.type="before"}else return null}return t.id===i.id&&t.type===i.type?null:[t,i]},E2=(s,r)=>{if(["after","before"].includes(r.type)){if(s.type==="after")return[r,s];if(s.type==="before")return[r,{...s,type:"self"}]}return null},Q2=(s,r)=>s.id===r.id&&s.type===r.type,p2=()=>`${d.generateRandomId(8)}`;class I{constructor(){w(this,"_model",new Map);w(this,"_ruleChange$",new J.Subject);w(this,"$ruleChange",this._ruleChange$.asObservable())}_ensureList(r,n){let e=this.getSubunitRules(r,n);if(!e){e=[];let t=this._model.get(r);t||(t=new Map,this._model.set(r,t)),t.set(n,e)}return e}getRule(r,n,e){const t=this.getSubunitRules(r,n);return t?t.find(i=>i.cfId===e):null}getUnitRules(r){return this._model.get(r)||null}getSubunitRules(r,n){var t;return((t=this._model.get(r))==null?void 0:t.get(n))||null}getAll(){return this._model}deleteRule(r,n,e){const t=this.getSubunitRules(r,n);if(t){const i=t.findIndex(o=>o.cfId===e),a=t[i];a&&(t.splice(i,1),this._ruleChange$.next({rule:a,subUnitId:n,unitId:r,type:"delete"}))}}setRule(r,n,e,t){const a=this._ensureList(r,n).find(o=>o.cfId===t);if(a){const o=d.Tools.deepClone(a);Object.assign(a,e),this._ruleChange$.next({rule:a,subUnitId:n,unitId:r,type:"set",oldRule:o})}}addRule(r,n,e){const t=this._ensureList(r,n);t.find(a=>a.cfId===e.cfId)||t.unshift(e),this._ruleChange$.next({rule:e,subUnitId:n,unitId:r,type:"add"})}moveRulePriority(r,n,e,t){const i=this._ensureList(r,n),a=O(e,i,l=>l.cfId),o=O(t,i,l=>l.cfId);if(o===null||a===null||o===a)return;const h=i[a];h&&(w2(e,t,i,l=>l.cfId),this._ruleChange$.next({rule:h,subUnitId:n,unitId:r,type:"sort"}))}createCfId(r,n){return p2()}deleteUnitId(r){this._model.delete(r)}}const G={type:d.CommandType.MUTATION,id:"sheet.mutation.move-conditional-rule",handler(s,r){if(!r)return!1;const{unitId:n,subUnitId:e,start:t,end:i}=r;return s.get(I).moveRulePriority(n,e,t,i),!0}},A2=s=>{const{unitId:r,subUnitId:n}=s,e=E2(s.start,s.end);if(!e)return[];const[t,i]=e;return[{id:G.id,params:{unitId:r,subUnitId:n,start:t,end:i}}]},z=(s,r)=>{const n=s.get(I),{unitId:e,subUnitId:t,cfId:i}=r,a=[...n.getSubunitRules(e,t)||[]],o=a.findIndex(l=>l.cfId===i),h=a[o-1];if(o>-1){const l=a[o],c=[{id:H.id,params:{unitId:e,subUnitId:t,rule:d.Tools.deepClone(l)}}];if(a.splice(o,1),o!==0){const u=a[0];if(u){const g=d2({id:u.cfId,type:"before"},{id:h.cfId,type:"after"},a,A=>A.cfId);if(!g)return c;const[C,D]=g,v={unitId:e,subUnitId:t,start:C,end:D};c.push({id:G.id,params:v})}}return c}return[]},j={type:d.CommandType.MUTATION,id:"sheet.mutation.delete-conditional-rule",handler(s,r){if(!r)return!1;const{unitId:n,subUnitId:e,cfId:t}=r;return s.get(I).deleteRule(n,e,t),!0}},h2=(s,r)=>({id:j.id,params:{unitId:r.unitId,subUnitId:r.subUnitId,cfId:r.rule.cfId}}),H={type:d.CommandType.MUTATION,id:"sheet.mutation.add-conditional-rule",handler(s,r){if(!r)return!1;const{unitId:n,subUnitId:e,rule:t}=r;return s.get(I).addRule(n,e,t),!0}},y2={type:d.CommandType.COMMAND,id:"sheet.command.add-conditional-rule",handler(s,r){if(!r)return!1;const{rule:n}=r,e=s.get(d.IUndoRedoService),t=s.get(d.ICommandService),i=s.get(I),a=s.get(d.IUniverInstanceService),o=F.getSheetCommandTarget(a,r);if(!o)return!1;const{unitId:h,subUnitId:l}=o,c=i.createCfId(h,l),u={unitId:h,subUnitId:l,rule:{...n,cfId:n.cfId||c}},g=h2(s,u),C=t.syncExecuteCommand(H.id,u);return C&&e.pushUndoRedo({unitID:h,redoMutations:[{id:H.id,params:u}],undoMutations:[g]}),C}},Y={type:d.CommandType.MUTATION,id:"sheet.mutation.set-conditional-rule",handler(s,r){if(!r)return!1;const{unitId:n,subUnitId:e,rule:t}=r,i=r.cfId||r.rule.cfId;return s.get(I).setRule(n,e,t,i),!0}},g2=(s,r)=>{const n=s.get(I),{unitId:e,subUnitId:t}=r,i=r.cfId||r.rule.cfId,a=n.getRule(e,t,i);return a?[{id:Y.id,params:{unitId:e,subUnitId:t,cfId:i,rule:d.Tools.deepClone(a)}}]:[]},_2={type:d.CommandType.COMMAND,id:"sheet.command.clear-range-conditional-rule",handler(s,r){var v;if(!r)return!1;const n=s.get(I),e=s.get(d.IUniverInstanceService),t=s.get(d.ICommandService),i=s.get(d.IUndoRedoService),a=s.get(F.SheetsSelectionsService),o=F.getSheetCommandTarget(e,r);if(!o)return!1;const{unitId:h,subUnitId:l}=o,c=((v=a.getCurrentSelections())==null?void 0:v.map(A=>A.range))||[],u=n.getSubunitRules(h,l);if(!(u!=null&&u.length)||!c.length)return!1;const g=[],C=[];u.forEach(A=>{const _=new d.ObjectMatrix;A.ranges.forEach(M=>{d.Range.foreach(M,(L,k)=>{_.setValue(L,k,1)})}),c.forEach(M=>{d.Range.foreach(M,(L,k)=>{_.realDeleteValue(L,k)})});const b=F.findAllRectangle(F.createTopMatrixFromMatrix(_));if(b.length){const M={...A,ranges:b},L={unitId:h,subUnitId:l,rule:M},k=g2(s,L);g.push({id:Y.id,params:L}),C.push(...k)}else{const M={unitId:h,subUnitId:l,cfId:A.cfId},L=z(s,M);g.push({id:j.id,params:M}),C.push(...L)}});const D=d.sequenceExecute(g,t).result;return D&&i.pushUndoRedo({unitID:h,redoMutations:g,undoMutations:C}),D}},M2={type:d.CommandType.COMMAND,id:"sheet.command.clear-worksheet-conditional-rule",handler(s,r){const n=s.get(I),e=s.get(d.IUniverInstanceService),t=s.get(d.ICommandService),i=s.get(d.IUndoRedoService),a=F.getSheetCommandTarget(e,r);if(!a)return!1;const{unitId:o,subUnitId:h}=a,l=n.getSubunitRules(o,h);if(!(l!=null&&l.length))return!1;const c=l.map(D=>({cfId:D.cfId,unitId:o,subUnitId:h})),u=c.map(D=>({id:j.id,params:D})),g=c.map(D=>z(s,D)[0]),C=d.sequenceExecute(u,t).result;return C&&i.pushUndoRedo({unitID:o,redoMutations:u,undoMutations:g}),C}},R2={type:d.CommandType.COMMAND,id:"sheet.command.delete-conditional-rule",handler(s,r){if(!r)return!1;const n=s.get(d.IUndoRedoService),e=s.get(d.ICommandService),t=s.get(d.IUniverInstanceService),i=F.getSheetCommandTarget(t,r);if(!i)return!1;const{unitId:a,subUnitId:o}=i,h={unitId:a,subUnitId:o,cfId:r.cfId},l=z(s,h),c=e.syncExecuteCommand(j.id,h);return c&&n.pushUndoRedo({unitID:a,undoMutations:l,redoMutations:[{id:j.id,params:h}]}),c}},S2={type:d.CommandType.COMMAND,id:"sheet.command.move-conditional-rule",handler(s,r){if(!r)return!1;const n=s.get(d.IUndoRedoService),e=s.get(d.ICommandService),t=s.get(d.IUniverInstanceService),i=s.get(I),a=F.getSheetCommandTarget(t,r);if(!a)return!1;const{unitId:o,subUnitId:h}=a,l=d2(r.start,r.end,i.getSubunitRules(o,h)||[],v=>v.cfId);if(!l)return!1;const[c,u]=l,g={unitId:o,subUnitId:h,start:c,end:u},C=A2(g),D=e.syncExecuteCommand(G.id,g);return D&&n.pushUndoRedo({unitID:o,redoMutations:[{id:G.id,params:g}],undoMutations:C}),D}},I2={type:d.CommandType.COMMAND,id:"sheet.command.set-conditional-rule",handler(s,r){if(!r)return!1;const n=s.get(d.IUndoRedoService),e=s.get(d.ICommandService),t=s.get(d.IUniverInstanceService),i=F.getSheetCommandTarget(t,r);if(!i)return!1;const{unitId:a,subUnitId:o}=i,h={unitId:a,subUnitId:o,rule:r.rule,cfId:r.cfId},l=g2(s,h),c=e.syncExecuteCommand(Y.id,h);return c&&n.pushUndoRedo({unitID:a,undoMutations:l,redoMutations:[{id:Y.id,params:h}]}),c}};var e0=Object.getOwnPropertyDescriptor,t0=(s,r,n,e)=>{for(var t=e>1?void 0:e?e0(r,n):r,i=s.length-1,a;i>=0;i--)(a=s[i])&&(t=a(t)||t);return t},x2=(s,r)=>(n,e)=>r(n,e,s);f.ConditionalFormattingFormulaService=class extends d.Disposable{constructor(n,e){super();w(this,"_formulaMap",new Map);w(this,"_result$",new J.Subject);w(this,"result$",this._result$.asObservable());this._registerOtherFormulaService=n,this._conditionalFormattingRuleModel=e,this._initFormulaResultChange(),this._initRuleChange()}_initRuleChange(){const n=e=>{switch(e.type){case S.colorScale:return e.config.some(t=>t.value.type===x.formula);case S.dataBar:return[e.config.max,e.config.min].some(t=>t.type===x.formula);case S.iconSet:return e.config.some(t=>t.value.type===x.formula)}};this.disposeWithMe(this._conditionalFormattingRuleModel.$ruleChange.subscribe(e=>{const{unitId:t,subUnitId:i,rule:a,oldRule:o}=e;e.type==="delete"&&this._removeFormulaByCfId(t,i,a.cfId),e.type==="set"&&(n(a.rule)||o&&n(o.rule))&&this._removeFormulaByCfId(t,i,a.cfId),e.type==="add"&&this._registerRuleFormulas(t,i,a)}))}_registerRuleFormulas(n,e,t){switch(t.rule.type){case S.highlightCell:{if(t.rule.subType===y.formula){const i=t.rule.value;i&&this.registerFormulaWithRange(n,e,t.cfId,i,t.ranges)}break}}}_initFormulaResultChange(){this.disposeWithMe(this._registerOtherFormulaService.formulaResult$.subscribe(n=>{for(const e in n)for(const t in n[e]){const i=n[e][t];for(const a of i){const o=this._ensureSubunitFormulaMap(e,t).getValue(a.formulaId,["formulaId"]);if(!o)continue;const l=this._getAllFormulaResultByCfId(e,t,o.cfId).every(c=>{const u=this._registerOtherFormulaService.getFormulaValueSync(e,t,c.formulaId);return(u==null?void 0:u.status)===E.FormulaResultStatus.SUCCESS});this._result$.next({...o,isAllFinished:l})}}}))}_ensureSubunitFormulaMap(n,e){let t=this._formulaMap.get(n);t||(t=new Map,this._formulaMap.set(n,t));let i=t.get(e);return i||(i=new d.RefAlias([],["formulaId","id"]),t.set(e,i)),i}getSubUnitFormulaMap(n,e){var t;return(t=this._formulaMap.get(n))==null?void 0:t.get(e)}registerFormulaWithRange(n,e,t,i,a=[{startRow:0,endRow:0,startColumn:0,endColumn:0}]){const o=this._ensureSubunitFormulaMap(n,e),h=this.createCFormulaId(t,i);if(o.getValue(h,["id"]))return;const l=this._registerOtherFormulaService.registerFormulaWithRange(n,e,i,a,void 0,E.OtherFormulaBizType.CONDITIONAL_FORMATTING,t);o.addValue({formulaText:i,unitId:n,subUnitId:e,cfId:t,id:h,formulaId:l})}_removeFormulaByCfId(n,e,t){const a=this.deleteCache(n,e,t).map(o=>o.formulaId);this._registerOtherFormulaService.deleteFormula(n,e,a)}getFormulaResultWithCoords(n,e,t,i,a=0,o=0){var u;const h=this.getSubUnitFormulaMap(n,e);if(!h)return{status:E.FormulaResultStatus.NOT_REGISTER};const l=h.getValue(this.createCFormulaId(t,i),["id"]);if(!l)return{status:E.FormulaResultStatus.NOT_REGISTER};const c=this._registerOtherFormulaService.getFormulaValueSync(n,e,l.formulaId);if(!c)return{status:E.FormulaResultStatus.NOT_REGISTER};if(c.status===E.FormulaResultStatus.SUCCESS&&c.result){const g=(u=c.result[a])==null?void 0:u[o];return{result:this._getCellValue(g),status:E.FormulaResultStatus.SUCCESS}}return{status:c.status}}getFormulaMatrix(n,e,t,i){const a=this.getSubUnitFormulaMap(n,e);if(!a)return{status:E.FormulaResultStatus.NOT_REGISTER};const o=a.getValue(this.createCFormulaId(t,i),["id"]);if(!o)return{status:E.FormulaResultStatus.NOT_REGISTER};const h=this._registerOtherFormulaService.getFormulaValueSync(n,e,o.formulaId);if(!h)return{status:E.FormulaResultStatus.NOT_REGISTER};if(h.status===E.FormulaResultStatus.SUCCESS&&h.result){const l=new d.ObjectMatrix;return new d.ObjectMatrix(h.result).forValue((u,g,C)=>{l.setValue(u,g,this._getCellValue(C))}),{result:l,status:E.FormulaResultStatus.SUCCESS}}return{status:h.status}}_getCellValue(n){if(!n||!n[0]||!n[0][0])return!1;const e=n[0][0];return(e==null?void 0:e.t)===d.CellValueType.BOOLEAN?e.v===d.BooleanNumber.TRUE||e.v===!0:e==null?void 0:e.v}deleteCache(n,e,t,i){const a=this.getSubUnitFormulaMap(n,e);if(!a)return[];if(i){const o=this.createCFormulaId(t,i);return a.deleteValue(o,["id"]),[]}else{const o=a.getValues().filter(h=>h.cfId===t);return o.forEach(h=>{a.deleteValue(h.formulaId,["formulaId"])}),o}}_getAllFormulaResultByCfId(n,e,t){const i=this.getSubUnitFormulaMap(n,e);return i?i.getValues().filter(o=>o.cfId===t):[]}createCFormulaId(n,e){return`${n}_${e}`}},f.ConditionalFormattingFormulaService=t0([x2(0,d.Inject(E.RegisterOtherFormulaService)),x2(1,d.Inject(I))],f.ConditionalFormattingFormulaService);var U=(s=>(s.preComputingStart="preComputingStart",s.preComputing="preComputing",s.preComputingEnd="preComputingEnd",s.preComputingError="preComputingError",s))(U||{});class s2{constructor(r){w(this,"_cache");w(this,"_preComputingStatus$",new J.BehaviorSubject("preComputingStart"));w(this,"preComputingStatus$",this._preComputingStatus$.asObservable().pipe(i2.distinctUntilChanged()));w(this,"_preComputingCache");w(this,"_rule");this._context=r,this._cache=new d.LRUMap(r.limit),this._rule=r.rule,this._preComputingCache=null,this._initClearCacheListener()}setCacheLength(r){this._cache.limit=r}clearCache(){this._cache.clear()}resetPreComputingCache(){this._preComputingStatus$.next("preComputingStart"),this._preComputingCache=null}updateRule(r){this._rule=r,this.resetPreComputingCache()}getCell(r,n){const e=this._createKey(r,n);if(this._preComputingStatus$.getValue()==="preComputing")return this._cache.get(e);let t=this.getPreComputingResult(r,n);if(t===null&&(this._preComputingStatus$.next("preComputingStart"),this.preComputing(r,n,this._getContext()),t=this.getPreComputingResult(r,n),t===null))return this._cache.get(e);if(this._preComputingStatus$.next("preComputingEnd"),this._cache.has(e))return this._cache.get(e);const i=this.getCellResult(r,n,t,this._getContext());return i!==null&&this._setCache(r,n,i),i}setPreComputingCache(r){this._preComputingCache=r}getPreComputingResult(r,n){return this._preComputingCache}_createKey(r,n){return`${r}_${n}`}_setCache(r,n,e){const t=this._createKey(r,n);this._cache.set(t,e)}_getContext(){return{...this._context,rule:this._rule}}_initClearCacheListener(){this.preComputingStatus$.subscribe(r=>{r==="preComputingEnd"&&this.clearCache()})}}class n0 extends s2{preComputing(r,n,e){const t=e.rule,i=e.worksheet,a=new d.ObjectMatrix;!t.rule.config.every(c=>c.value.type===x.num)&&t2(t.ranges,i.getMaxRows()-1,i.getMaxColumns()-1).forEach(u=>{d.Range.foreach(u,(g,C)=>{const D=e.getCellValue(g,C),v=D&&D.v;if(!R(v)&&(D==null?void 0:D.t)===d.CellValueType.NUMBER){const A=Number(v);!Number.isNaN(A)&&a.setValue(g,C,A)}})});const h=[...t.rule.config].sort((c,u)=>c.index-u.index).map(c=>({value:e2(c.value,a,{...e,cfId:t.cfId}),color:new d.ColorKit(c.color)}));if(!h.some(c=>Z.isObject(c.value)?c.value.status!==E.FormulaResultStatus.SUCCESS:!1)){const c=h.map(u=>u.color).reduce((u,g,C)=>(u.result.push({color:g,value:u.sortValue[C]}),u),{result:[],sortValue:h.map(u=>u.value.result).sort((u,g)=>u-g)}).result;this.setPreComputingCache(c),this._preComputingStatus$.next(U.preComputingEnd);return}this._preComputingStatus$.next(U.preComputing)}getCellResult(r,n,e,t){if(!e)return null;const i=t.getCellValue(r,n);if(i.t===d.CellValueType.NUMBER){const a=Number(i.v);if(!Number.isNaN(a))return N2(e,a)}}}const b2="sheet-conditional-rule-data-bar",C2="#ffbe38",f2="#abd91a",L2="#000",i0=34,s0=s=>{const{startRow:r,endRow:n,startColumn:e,endColumn:t}=s;return`${r}-${n}-${e}-${t}`};class T2 extends Z.SheetExtension{constructor(){super(...arguments);w(this,"_paddingRightAndLeft",2);w(this,"_paddingTopAndBottom",2);w(this,"uKey",b2);w(this,"Z_INDEX",i0);w(this,"_radius",1)}draw(n,e,t,i){const{worksheet:a}=t;if(!a)return!1;const o=new Set;n.save(),d.Range.foreach(t.rowColumnSegment,(h,l)=>{if(!a.getRowVisible(h)||!a.getColVisible(l))return;const c=t.getCellWithCoordByIndex(h,l,!1),{isMerged:u,isMergedMainCell:g,mergeInfo:C}=c;let D=a.getCell(h,l);if(u&&(D=a.getCell(C.startRow,C.startColumn)),!(D!=null&&D.dataBar)||!this.isRenderDiffRangesByCell(C,i))return;if(u||g){const V=s0(C);if(o.has(V))return;o.add(V)}const{color:v,value:A,startPoint:_,isGradient:b}=D.dataBar,{startX:M,endX:L,startY:k,endY:v2}=u||g?C:c,u2=L-M,F2=v2+Z.FIX_ONE_PIXEL_BLUR_OFFSET-k,$=u2-this._paddingRightAndLeft*2,H2=F2-this._paddingTopAndBottom*2;if(A>0){const V=Math.max($*(1-_/100)*A/100,1),P=M+this._paddingRightAndLeft+_/100*$,W=k+this._paddingTopAndBottom;if(b){const q=n.createLinearGradient(P,W,P+V,W);q.addColorStop(0,v),q.addColorStop(1,"rgb(255 255 255)"),n.fillStyle=q,n.strokeStyle=v,n.lineWidth=1}else n.fillStyle=v;this._drawRectWithRoundedCorner(n,P,W,V,H2,!1,!0,!0,!1),b&&n.stroke()}else{const V=Math.max($*_/100*Math.abs(A)/100,1),P=M+this._paddingRightAndLeft+_/100*$-V,W=k+this._paddingTopAndBottom;if(b){const q=n.createLinearGradient(P,W,P+V,W);q.addColorStop(0,"rgb(255 255 255)"),q.addColorStop(1,v),n.fillStyle=q,n.strokeStyle=v,n.lineWidth=1}else n.fillStyle=v;this._drawRectWithRoundedCorner(n,P,W,V,H2,!0,!1,!1,!0),b&&n.stroke()}}),n.restore()}_drawRectWithRoundedCorner(n,e,t,i,a,o,h,l,c){const u=this._radius;!a||!i||(n.beginPath(),n.moveTo(e+u,t),n.lineTo(e+i-u,t),h?n.arcTo(e+i,t,e+i,t+u,u):n.lineTo(e+i,t),n.lineTo(e+i,t+a-u),l?n.arcTo(e+i,t+a,e+i-u,t+a,u):n.lineTo(e+i,t+a),n.lineTo(e+u,t+a),c?n.arcTo(e,t+a,e,t+a-u,u):n.lineTo(e,t+a),n.lineTo(e,t+u),o?n.arcTo(e,t,e+u,t,u):n.lineTo(e,t),n.closePath(),n.fill())}}Z.SpreadsheetExtensionRegistry.add(T2);const r2=s=>Math.max(Math.min(100,s),0),r0=(s,r,n)=>{const e=n(s,r);if(e&&e.t===d.CellValueType.NUMBER){const t=Number(e.v);return Number.isNaN(t)?null:t}return null};class a0 extends s2{preComputing(r,n,e){const t=e.rule,i=t.rule,a=e.worksheet,o=new d.ObjectMatrix;![t.rule.config.max,t.rule.config.min].every(C=>C.type===x.num)&&t2(t.ranges,a.getMaxRows()-1,a.getMaxColumns()-1).forEach(D=>{d.Range.foreach(D,(v,A)=>{const _=e.getCellValue(v,A),b=_&&_.v;if(!R(b)&&(_==null?void 0:_.t)===d.CellValueType.NUMBER){const M=Number(b);!Number.isNaN(M)&&o.setValue(v,A,M)}})});const l=e2(i.config.min,o,{...e,cfId:t.cfId}),c=e2(i.config.max,o,{...e,cfId:t.cfId});let u=0,g=0;if(l.status===E.FormulaResultStatus.SUCCESS){const C=Number(l.result);u=Number.isNaN(C)?0:C}else{this._preComputingStatus$.next(U.preComputing);return}if(c.status===E.FormulaResultStatus.SUCCESS){const C=Number(c.result),D=Number.isNaN(C)?0:C;g=Math.max(D,u),u=Math.min(D,u);let v=50;if(u<0&&g<=0)v=100;else if(u<0&&g>0){const A=Math.abs(g)+Math.abs(u);v=Math.abs(u)/A*100}else u>=0&&g>0&&(v=0);this.setPreComputingCache({min:u,max:g,startPoint:v}),this._preComputingStatus$.next(U.preComputingEnd);return}this._preComputingStatus$.next(U.preComputing)}getCellResult(r,n,e,t){const{min:i,max:a,startPoint:o}=e,l=t.rule.rule,c=l.isShowValue,u=l.config.isGradient,g=r0(r,n,t.getCellValue);if(!(g===null||g<i||i===a||a<i)){if(g===0)return{color:L2,startPoint:o,value:0,isGradient:u,isShowValue:c};if(i<0&&a<=0){const C=a-i,D=r2((a-g)/C*100);return D===0?void 0:{color:l.config.nativeColor||f2,startPoint:o,value:-D,isGradient:u,isShowValue:c}}else if(i<0&&a>0)if(g>0){const C=r2(Math.min(g/a,1)*100);return C===0?void 0:{color:l.config.positiveColor||C2,startPoint:o,value:C,isGradient:u,isShowValue:c}}else{const C=r2(Math.min(Math.abs(g)/Math.abs(i),1)*100);return C===0?void 0:{color:l.config.nativeColor||f2,startPoint:o,value:-C,isGradient:u,isShowValue:c}}else if(i>=0&&a>0){const C=a-i,D=0,v=r2((1-(a-g)/C)*100);return v===0?void 0:{color:l.config.positiveColor||C2,startPoint:D,value:v,isGradient:u,isShowValue:c}}}}}class l0 extends s2{preComputing(r,n,e){const t=e.rule.rule,i=t2(e.rule.ranges,e.worksheet.getMaxRows()-1,e.worksheet.getMaxColumns()-1),o=(()=>{switch(t.subType){case y.average:{let h=0,l=0;return i.forEach(c=>{d.Range.foreach(c,(u,g)=>{const C=e.getCellValue(u,g),D=N(C);C&&C.t===d.CellValueType.NUMBER&&!R(D)&&(h+=Number(D)||0,l++)})}),{value:h/l,type:t.subType}}case y.uniqueValues:case y.duplicateValues:{const h=new Map;return i.forEach(l=>{d.Range.foreach(l,(c,u)=>{const g=e.getCellValue(c,u),C=N(g);if(!R(C)){const D=h.get(C);D?h.set(C,D+1):h.set(C,1)}})}),{value:h,type:t.subType}}case y.rank:{let h=[];i.forEach(u=>{d.Range.foreach(u,(g,C)=>{const D=e.getCellValue(g,C),v=N(D);D&&D.t===d.CellValueType.NUMBER&&!R(v)&&h.push(Number(v)||0)})}),h.sort((u,g)=>g-u);const l=e.rule.rule;if(l.isPercent){l.isBottom&&(h=h.toReversed());const u=d.Tools.clamp(l.value,0,100)/100,g=Math.floor(u*h.length),C=d.Tools.clamp(g-1,0,h.length-1);return{value:h[C],type:t.subType}}const c=Math.floor(d.Tools.clamp(l.isBottom?l.value-1:l.value,0,h.length));return l.isBottom?{value:h[h.length-c-1],type:t.subType}:{value:h[Math.max(c-1,0)],type:t.subType}}case y.formula:{const h=t,l=e.accessor.get(f.ConditionalFormattingFormulaService);l.registerFormulaWithRange(e.unitId,e.subUnitId,e.rule.cfId,h.value,e.rule.ranges);const c=l.getFormulaMatrix(e.unitId,e.subUnitId,e.rule.cfId,h.value);return c&&c.status===E.FormulaResultStatus.SUCCESS?(this._preComputingStatus$.next(U.preComputingEnd),{value:c.result,type:t.subType}):(this._preComputingStatus$.next(U.preComputing),null)}case y.timePeriod:switch(t.operator){case B.last7Days:return{value:{start:d.dayjs().subtract(7,"day").valueOf(),end:d.dayjs().valueOf()},type:t.subType};case B.lastMonth:return{value:{start:d.dayjs().startOf("month").subtract(1,"month").valueOf(),end:d.dayjs().endOf("month").subtract(1,"month").valueOf()},type:t.subType};case B.lastWeek:return{value:{start:d.dayjs().startOf("week").subtract(1,"week").valueOf(),end:d.dayjs().endOf("week").subtract(1,"week").valueOf()},type:t.subType};case B.nextMonth:return{value:{start:d.dayjs().startOf("month").add(1,"month").valueOf(),end:d.dayjs().endOf("month").add(1,"month").valueOf()},type:t.subType};case B.nextWeek:return{value:{start:d.dayjs().startOf("week").add(1,"week").valueOf(),end:d.dayjs().endOf("week").add(1,"week").valueOf()},type:t.subType};case B.thisMonth:return{value:{start:d.dayjs().startOf("month").valueOf(),end:d.dayjs().endOf("month").valueOf()},type:t.subType};case B.thisWeek:return{value:{start:d.dayjs().startOf("week").valueOf(),end:d.dayjs().endOf("week").valueOf()},type:t.subType};case B.today:return{value:{start:d.dayjs().startOf("day").valueOf(),end:d.dayjs().endOf("day").valueOf()},type:t.subType};case B.tomorrow:return{value:{start:d.dayjs().startOf("day").add(1,"day").valueOf(),end:d.dayjs().endOf("day").add(1,"day").valueOf()},type:t.subType};case B.yesterday:return{value:{start:d.dayjs().startOf("day").subtract(1,"day").valueOf(),end:d.dayjs().endOf("day").subtract(1,"day").valueOf()},type:t.subType}}}})();this.setPreComputingCache(o)}getCellResult(r,n,e,t){const i=t.getCellValue(r,n),a=t.rule.rule;return(()=>{switch(a.subType){case y.number:{const l=i&&Number(i.v),c=(i==null?void 0:i.t)===d.CellValueType.NUMBER,u=a;return c?R(l)||Number.isNaN(l)?void 0:K({operator:u.operator,value:u.value||0},l||0):!![p.notEqual,p.notBetween].includes(u.operator)}case y.text:{const l=a,c=N(i),u=R(c)?"":String(c),g=l.value||"";switch(l.operator){case T.beginsWith:return u.startsWith(g);case T.containsBlanks:return/^\s*$/.test(u);case T.notContainsBlanks:return!/^\s*$/.test(u);case T.containsErrors:return E.ERROR_TYPE_SET.has(u);case T.notContainsErrors:return!E.ERROR_TYPE_SET.has(u);case T.containsText:return u.indexOf(g)>-1;case T.notContainsText:return u.indexOf(g)===-1;case T.endsWith:return u.endsWith(g);case T.equal:return u===g;case T.notEqual:return u!==g;default:return!1}}case y.timePeriod:{const l=N(i);if(R(l)||Number.isNaN(Number(l))||(i==null?void 0:i.t)!==d.CellValueType.NUMBER||!e)return;const c=k2(Number(l)),{start:u,end:g}=e.value;return c>=u&&c<=g}case y.average:{const l=i&&i.v,c=Number(l),u=(i==null?void 0:i.t)===d.CellValueType.NUMBER,g=a;if(!u)return p.notEqual===g.operator;if(R(l)||Number.isNaN(c)||!e)return!1;const C=e.value;switch(g.operator){case p.greaterThan:return c>C;case p.greaterThanOrEqual:return c>=C;case p.lessThan:return c<C;case p.lessThanOrEqual:return c<=C;case p.equal:return Q(c,C);case p.notEqual:return!Q(c,C);default:return!1}}case y.rank:{const l=N(i),c=Number(l);if(R(l)||Number.isNaN(c)||(i==null?void 0:i.t)!==d.CellValueType.NUMBER||!e)return!1;const u=e.value;return a.isBottom?c<=u:c>=u}case y.uniqueValues:{const l=N(i);return R(l)||!e?!1:e.value.get(l)===1}case y.duplicateValues:{const l=N(i);if(R(l)||!e)return!1;const c=e.value.get(l);return c&&c!==1}case y.formula:{const l=e==null?void 0:e.value;if(l){const c=t.rule.ranges[0],u=r-c.startRow,g=n-c.startColumn;return l.getValue(u,g)===!0}return!1}}})()?a.style:{}}}const o0=(s,r,n)=>{const e=n(s,r);if(e&&e.t===d.CellValueType.NUMBER){const t=Number(e.v);return Number.isNaN(t)?null:t}return null};class u0 extends s2{preComputing(r,n,e){const t=e.rule.rule,i=e.worksheet,a=new d.ObjectMatrix;!t.config.every(c=>c.value.type===x.num)&&t2(e.rule.ranges,i.getMaxRows()-1,i.getMaxColumns()-1).forEach(u=>{d.Range.foreach(u,(g,C)=>{const D=e.getCellValue(g,C),v=D&&D.v;if(!R(v)&&(D==null?void 0:D.t)===d.CellValueType.NUMBER){const A=Number(v);!Number.isNaN(A)&&a.setValue(g,C,A)}})});const h=t.config.map(c=>e2(c.value,a,{...e,cfId:e.rule.cfId}));if(!h.some(c=>c.status!==E.FormulaResultStatus.SUCCESS)){const c=h.map((u,g)=>({operator:t.config[g].operator,value:Number(u.result)||0})).reduce((u,g,C,D)=>{const v=t.config[C];if(!C||C===D.length-1)u.push({...g,iconId:v.iconId,iconType:v.iconType});else{const A=D[C-1];K(A,g.value)||u.push({...g,iconId:v.iconId,iconType:v.iconType})}return u},[]);this.setPreComputingCache(c),this._preComputingStatus$.next(U.preComputingEnd);return}this._preComputingStatus$.next(U.preComputing)}getCellResult(r,n,e,t){if(!e)return null;const i=o0(r,n,t.getCellValue);if(i===null)return;const a=t.rule.rule,o=a.isShowValue===void 0?!0:!!a.isShowValue;for(let h=0;h<e.length;h++){const l=e[h],c={...l},u={...l},{iconId:g,iconType:C}=l;if(h===0){if(K(l,i))return{iconId:g,iconType:C,isShowValue:o}}else{if(h===e.length-1)return{iconId:g,iconType:C,isShowValue:o};{const D=e[h-1];if(u.operator=U2(D.operator),u.value=D.value,K(c,i)&&K(u,i))return{iconId:g,iconType:C,isShowValue:o}}}}}}var c0=Object.getOwnPropertyDescriptor,d0=(s,r,n,e)=>{for(var t=e>1?void 0:e?c0(r,n):r,i=s.length-1,a;i>=0;i--)(a=s[i])&&(t=a(t)||t);return t},a2=(s,r)=>(n,e)=>r(n,e,s);const l2=1e3*3*3;f.ConditionalFormattingViewModel=class extends d.Disposable{constructor(n,e,t,i){super();w(this,"_calculateUnitManagers",new Map);w(this,"_rTreeManager",new d.RTree);w(this,"_cellCache",new d.LRUMap(l2));w(this,"_markDirty$",new J.Subject);w(this,"markDirty$",this._markDirty$.asObservable());w(this,"_markRuleDirtyAtOnce",(n,e,t,i=!0)=>{if(this._cellCache.clear(),i){const o=this._ensureCalculateUnitManager(n,e).get(t);o&&o.resetPreComputingCache()}this._markDirty$.next({unitId:n,subUnitId:e,cfId:t})});w(this,"markRuleDirty",(()=>{const n=new J.Subject;return this.disposeWithMe(n.pipe(i2.bufferTime(100),i2.filter(e=>!!e.length),i2.map(e=>{const t=new Set,i=[];return e.forEach(a=>{const o=`${a.unitId}_${a.subUnitId}_${a.cfId}`;if(t.has(o)){if(a.isNeedResetPreComputingCache){const h=i.find(l=>l.cfId===a.cfId);h.isNeedResetPreComputingCache=!0}return}t.add(o),i.push({...a})}),i})).subscribe(e=>{e.forEach(t=>{this._markRuleDirtyAtOnce(t.unitId,t.subUnitId,t.cfId,t.isNeedResetPreComputingCache)})})),(e,t,i,a=!0)=>{n.next({unitId:e,subUnitId:t,cfId:i,isNeedResetPreComputingCache:a})}})());this._injector=n,this._conditionalFormattingRuleModel=e,this._conditionalFormattingFormulaService=t,this._univerInstanceService=i,this._initRuleListener(),this._handleCustomFormulasSeparately(),this._initCFFormulaListener()}_initCFFormulaListener(){this.disposeWithMe(this._conditionalFormattingFormulaService.result$.subscribe(({unitId:n,subUnitId:e,cfId:t,isAllFinished:i})=>{i&&this._markRuleDirtyAtOnce(n,e,t,i)}))}getCellCfs(n,e,t,i){const a=this._createCacheKey(n,e,t,i);if(this._cellCache.has(a))return this._cellCache.get(a);const o=this._getCellCfs(n,e,t,i);return o.length&&this._cellCache.set(a,o),o}_getCellCfs(n,e,t,i){var u;const a=(u=this._conditionalFormattingRuleModel.getSubunitRules(n,e))!=null?u:[],o=this._ensureCalculateUnitManager(n,e),h=this._rTreeManager.bulkSearch([{unitId:n,sheetId:e,range:{startColumn:i,endColumn:i,startRow:t,endRow:t}}]),l=a.filter(g=>h.has(g.cfId));return l.length?l.map(g=>{const C=o.get(g.cfId);return C?{cfId:g.cfId,result:C.getCell(t,i)}:null}).filter(g=>!!g).map((g,C)=>({...g,priority:C})):[]}dispose(){this.clearCache(),super.dispose()}clearCache(){this._calculateUnitManagers.clear(),this._cellCache.clear(),this._rTreeManager.clear()}_handleCustomFormulasSeparately(){this.disposeWithMe(this._conditionalFormattingRuleModel.$ruleChange.subscribe(n=>{if(n.type==="set"){const{unitId:e,subUnitId:t}=n,i=n.oldRule;i.rule.type===S.highlightCell&&i.rule.subType===y.formula&&this._conditionalFormattingFormulaService.deleteCache(e,t,i.cfId)}}))}_initRuleListener(){this.disposeWithMe(this._conditionalFormattingRuleModel.$ruleChange.subscribe(n=>{const{unitId:e,subUnitId:t,rule:i}=n,{cfId:a,ranges:o}=i,h=this._ensureCalculateUnitManager(e,t);switch(this.markRuleDirty(e,t,a),n.type){case"add":{this._rTreeManager.bulkInsert(o.map(c=>({unitId:e,sheetId:t,id:a,range:c})));const l=this._createRuleCalculateUnitInstance(e,t,i);if(!l)return;h.set(i.cfId,l);break}case"delete":{this._rTreeManager.bulkRemove(o.map(l=>({unitId:e,sheetId:t,id:a,range:l}))),h.delete(i.cfId);break}case"set":{const l=n.oldRule;if(this._rTreeManager.bulkRemove(l.ranges.map(c=>({unitId:e,sheetId:t,id:l.cfId,range:c}))),this._rTreeManager.bulkInsert(o.map(c=>({unitId:e,sheetId:t,id:a,range:c}))),l.rule.type!==i.rule.type){const c=this._createRuleCalculateUnitInstance(e,t,i);if(!c)return;h.delete(l.cfId),h.set(i.cfId,c)}else{const c=h.get(l.cfId);if(!c)return;c.updateRule(i)}}}}))}_ensureCalculateUnitManager(n,e){let t=this._calculateUnitManagers.get(n);t||(t=new Map,this._calculateUnitManagers.set(n,t));let i=t.get(e);return i||(i=new Map,t.set(e,i)),i}_createRuleCalculateUnitInstance(n,e,t){const i=this._univerInstanceService.getUnit(n),a=i==null?void 0:i.getSheetBySheetId(e);if(!i||!a)return;const o={workbook:i,worksheet:a,unitId:n,subUnitId:e,accessor:this._injector,rule:t,limit:l2,getCellValue:(h,l)=>a.getCellRaw(h,l)||{}};switch(t.rule.type){case S.colorScale:return new n0(o);case S.dataBar:return new a0(o);case S.highlightCell:return new l0(o);case S.iconSet:return new u0(o)}}_createCacheKey(n,e,t,i){return`${n}_${e}_${t}_${i}`}setCacheLength(n=l2){this._cellCache.limit!==n&&(this._cellCache.limit=n,this._calculateUnitManagers.forEach(e=>{e.forEach(t=>{t.forEach(i=>{i.setCacheLength(n)})})}))}},f.ConditionalFormattingViewModel=d0([a2(0,d.Inject(d.Injector)),a2(1,d.Inject(I)),a2(2,d.Inject(f.ConditionalFormattingFormulaService)),a2(3,d.IUniverInstanceService)],f.ConditionalFormattingViewModel);function Q(s,r){return Math.abs(s-r)<Number.EPSILON}const R=s=>s==null||typeof s=="string"&&s.trim()==="",N=s=>{var e,t;if(!s)return null;if(s.t===d.CellValueType.BOOLEAN)return s.v===d.BooleanNumber.TRUE?E.BooleanValue.TRUE:E.BooleanValue.FALSE;const r=s.v,n=(t=(e=s.p)==null?void 0:e.body)==null?void 0:t.dataStream.replace(/\r\n$/,"");return R(r)?R(n)?null:n:r},D2=86400;function B2(s,r=!0){if(r&&s>=0){if(s===0)return[1900,1,0];if(s===60)return[1900,2,29];if(s<60)return[1900,s<32?1:2,(s-1)%31+1]}let n=s+68569+2415019;const e=Math.floor(4*n/146097);n=n-Math.floor((146097*e+3)/4);const t=Math.floor(4e3*(n+1)/1461001);n=n-Math.floor(1461*t/4)+31;const i=Math.floor(80*n/2447),a=n-Math.floor(2447*i/80);n=Math.floor(i/11);const o=i+2-12*n;return[100*(e-49)+t+n|0,o|0,a|0]}const k2=s=>{let r=s|0;const n=D2*(s-r);let e=Math.floor(n);n-e>.9999&&(e+=1,e===D2&&(e=0,r+=1));const t=e<0?D2+e:e,[i,a,o]=B2(s,!0),h=Math.floor(t/60/60)%60,l=Math.floor(t/60)%60,c=Math.floor(t)%60;return d.dayjs(`${i}/${a}/${o} ${h}:${l}:${c}`).valueOf()},e2=(s,r,n)=>{switch(s.type){case x.max:{let e=0;return r.forValue((t,i,a)=>{a>e&&(e=a)}),{status:E.FormulaResultStatus.SUCCESS,result:e}}case x.min:{let e;return r.forValue((t,i,a)=>{e===void 0&&(e=a),a<e&&(e=a)}),{status:E.FormulaResultStatus.SUCCESS,result:e}}case x.percent:{let e,t;r.forValue((o,h,l)=>{(e===void 0||t===void 0)&&(e=l,t=l),l>e&&(e=l),l<t&&(t=l)});const i=(e||0)-(t||0),a=Math.max(Math.min(Number(s.value)||0,100),0);return{status:E.FormulaResultStatus.SUCCESS,result:i*(a/100)+(t||0)}}case x.percentile:{const e=r.toNativeArray().sort((l,c)=>l-c),t=Math.max(Math.min(Number(s.value)||0,100),0),i=(e.length-1)*t/100,a=Math.floor(i),o=i-a,h=e[a]+(e[Math.min(a+1,e.length-1)]-e[a])*o;return{status:E.FormulaResultStatus.SUCCESS,result:h}}case x.formula:{const{accessor:e,unitId:t,subUnitId:i,cfId:a}=n,o=String(s.value),h=e.get(f.ConditionalFormattingFormulaService);return h.registerFormulaWithRange(t,i,a,o),h.getFormulaResultWithCoords(t,i,a,o)}case x.num:default:{const e=Number(s.value);return{status:E.FormulaResultStatus.SUCCESS,result:Number.isNaN(e)?0:e}}}},h0=(s,r,n,e)=>{const{accessor:t}=e,i=t.get(f.ConditionalFormattingViewModel),a=new d.ObjectMatrix;return n.ranges.forEach(o=>{d.Range.foreach(o,(h,l)=>{const c=i.getCellCfs(s,r,h,l);if(c){const u=c.find(g=>g.cfId===n.cfId);u!=null&&u.result&&a.setValue(h,l,u.result)}})}),a},K=(s,r)=>{switch(s.operator){case p.between:{if(typeof s.value!="object"||!s.value.length)return;const n=Math.min(...s.value),e=Math.max(...s.value);return r>=n&&r<=e}case p.notBetween:{if(typeof s.value!="object"||!s.value.length)return;const n=Math.min(...s.value),e=Math.max(...s.value);return!(r>=n&&r<=e)}case p.equal:{const n=s.value||0;return Q(n,r)}case p.notEqual:{const n=s.value||0;return!Q(n,r)}case p.greaterThan:{const n=s.value||0;return r>n}case p.greaterThanOrEqual:{const n=s.value||0;return r>=n}case p.lessThan:{const n=s.value||0;return r<n}case p.lessThanOrEqual:{const n=s.value||0;return r<=n}default:return!1}},U2=s=>{switch(s){case p.greaterThan:return p.lessThanOrEqual;case p.greaterThanOrEqual:return p.lessThan;case p.lessThan:return p.greaterThanOrEqual;case p.lessThanOrEqual:return p.greaterThan}return s},N2=(s,r)=>{const n=i=>i.a!==void 0?i:{...i,a:1},e=s.findIndex(i=>i.value>=r),t=e-1;if(e===0)return s[0].color.toRgbString();if(t>=0){const i=s[t],a=s[e];if(i.color.isValid&&a.color.isValid){const o=n(i.color.toRgb()),h=n(a.color.toRgb()),l=a.value-i.value,c=(r-i.value)/l,u=["r","g","b","a"].reduce((C,D)=>{const v=o[D];return C[D]=(h[D]-v)*c+v,C},{});return new d.ColorKit(u).toRgbString()}}else return s[s.length-1].color.toRgbString()},t2=(s,r,n)=>s.map(e=>{if(e.startColumn>n||e.startRow>r)return null;const t={...e};return t.endRow=Math.min(t.endRow,r),t.endColumn=Math.min(t.endColumn,n),t}).filter(e=>!!e);function g0(s){let r=0;return new d.ObjectMatrix(s).forValue((n,e,t)=>{r=Math.max(Number.isNaN(r)?0:r,Number(t))}),r}const m={feedback:{mistake:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%229.99999%22%20cy%3D%2210%22%20r%3D%227.03704%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6.87359%206.87332C6.6146%207.13231%206.6146%207.55221%206.87359%207.8112L9.062%209.99961L6.87356%2012.188C6.61457%2012.447%206.61457%2012.8669%206.87356%2013.1259C7.13255%2013.3849%207.55245%2013.3849%207.81144%2013.1259L9.99987%2010.9375L12.1882%2013.1258C12.4472%2013.3848%2012.8671%2013.3848%2013.1261%2013.1258C13.3851%2012.8669%2013.3851%2012.447%2013.1261%2012.188L10.9378%209.99961L13.1261%207.81127C13.3851%207.55228%2013.3851%207.13238%2013.1261%206.87339C12.8671%206.61441%2012.4472%206.61441%2012.1882%206.87339L9.99987%209.06173L7.81147%206.87332C7.55248%206.61433%207.13257%206.61433%206.87359%206.87332Z%22%20fill%3D%22%23FFFFFF%22%2F%3E%0A%3C%2Fsvg%3E%0A",warn:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%229.99999%22%20cy%3D%2210%22%20r%3D%227.03704%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3Cpath%20d%3D%22M9.16817%206.67735C9.16646%206.61745%209.1656%206.5875%209.16653%206.56236C9.18103%206.16817%209.49136%205.84883%209.88497%205.82306C9.91008%205.82141%209.94004%205.82141%209.99996%205.82141V5.82141C10.0599%205.82141%2010.0899%205.82141%2010.115%205.82306C10.5086%205.84883%2010.8189%206.16817%2010.8334%206.56236C10.8343%206.5875%2010.8335%206.61745%2010.8318%206.67735L10.7043%2011.131C10.6934%2011.5121%2010.3812%2011.8154%209.99995%2011.8154V11.8154C9.61866%2011.8154%209.30655%2011.5121%209.29564%2011.131L9.16817%206.67735Z%22%20fill%3D%22%23FFFFFF%22%2F%3E%0A%3Crect%20x%3D%229.31488%22%20y%3D%2212.8086%22%20width%3D%221.37006%22%20height%3D%221.37006%22%20rx%3D%220.685032%22%20fill%3D%22%23FFFFFF%22%2F%3E%0A%3C%2Fsvg%3E%0A",correct:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M17.037%2010C17.037%2013.8865%2013.8864%2017.0371%209.99999%2017.0371C6.11354%2017.0371%202.96295%2013.8865%202.96295%2010C2.96295%206.1136%206.11354%202.96301%209.99999%202.96301C13.8864%202.96301%2017.037%206.1136%2017.037%2010Z%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3Cpath%20d%3D%22M13.9239%207.17477C13.6638%206.91472%2013.2422%206.91472%2012.9821%207.17477L8.74433%2011.4126L7.01786%209.6861C6.75781%209.42606%206.33619%209.42606%206.07614%209.6861C5.81609%209.94615%205.81609%2010.3678%206.07614%2010.6278L8.27349%2012.8252C8.53354%2013.0852%208.95516%2013.0852%209.21521%2012.8252L9.2195%2012.8209L13.9239%208.1165C14.1839%207.85645%2014.1839%207.43482%2013.9239%207.17477Z%22%20fill%3D%22%23FFFFFF%22%2F%3E%0A%3C%2Fsvg%3E%0A"},star:{starEmpty:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10.3437%203.3312L11.6861%206.67412C11.8451%207.0699%2012.2165%207.33978%2012.6421%207.36863L16.2362%207.61233C16.5693%207.63492%2016.7048%208.05202%2016.4486%208.26608L13.6841%2010.5758C13.3568%2010.8493%2013.215%2011.2859%2013.319%2011.6996L14.1979%2015.1931C14.2793%2015.5168%2013.9245%2015.7746%2013.6418%2015.5971L10.5908%2013.6817C10.2296%2013.4549%209.77045%2013.4549%209.40924%2013.6817L6.35828%2015.5971C6.07553%2015.7746%205.72072%2015.5168%205.80217%2015.1931L6.68105%2011.6996C6.7851%2011.2859%206.64322%2010.8493%206.31592%2010.5758L3.55145%208.26607C3.29525%208.05202%203.43078%207.63492%203.76386%207.61233L7.358%207.36863C7.78352%207.33978%208.15498%207.0699%208.31391%206.67412L9.65633%203.3312C9.78074%203.0214%2010.2193%203.0214%2010.3437%203.3312Z%22%20fill%3D%22%23fff%22%20stroke%3D%22%23FFBD37%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3C%2Fsvg%3E%0A",starIncomplete:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10.3437%203.3312L11.6861%206.67412C11.845%207.0699%2012.2165%207.33978%2012.642%207.36863L16.2361%207.61233C16.5692%207.63492%2016.7047%208.05202%2016.4485%208.26608L13.6841%2010.5758C13.3568%2010.8493%2013.2149%2011.2859%2013.3189%2011.6996L14.1978%2015.1931C14.2793%2015.5168%2013.9245%2015.7746%2013.6417%2015.5971L10.5908%2013.6817C10.2295%2013.4549%209.77039%2013.4549%209.40918%2013.6817L6.35822%2015.5971C6.07547%2015.7746%205.72066%2015.5168%205.80211%2015.1931L6.68098%2011.6996C6.78504%2011.2859%206.64316%2010.8493%206.31586%2010.5758L3.55139%208.26607C3.29519%208.05202%203.43072%207.63492%203.7638%207.61233L7.35793%207.36863C7.78346%207.33978%208.15491%207.0699%208.31385%206.67412L9.65627%203.3312C9.78068%203.0214%2010.2192%203.0214%2010.3437%203.3312Z%22%20fill%3D%22%23fff%22%20stroke%3D%22%23FFBD37%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3Cmask%20id%3D%22mask1_613_177%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2210%22%20height%3D%2220%22%3E%0A%3Crect%20width%3D%2210%22%20height%3D%2220%22%20fill%3D%22%23C4C4C4%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask1_613_177)%22%3E%0A%3Cpath%20d%3D%22M10.3437%203.3312L11.6861%206.67412C11.845%207.0699%2012.2165%207.33978%2012.642%207.36863L16.2361%207.61233C16.5692%207.63492%2016.7047%208.05202%2016.4485%208.26608L13.6841%2010.5758C13.3568%2010.8493%2013.2149%2011.2859%2013.3189%2011.6996L14.1978%2015.1931C14.2793%2015.5168%2013.9245%2015.7746%2013.6417%2015.5971L10.5908%2013.6817C10.2295%2013.4549%209.77039%2013.4549%209.40918%2013.6817L6.35822%2015.5971C6.07547%2015.7746%205.72066%2015.5168%205.80211%2015.1931L6.68098%2011.6996C6.78504%2011.2859%206.64316%2010.8493%206.31586%2010.5758L3.55139%208.26607C3.29519%208.05202%203.43072%207.63492%203.7638%207.61233L7.35793%207.36863C7.78346%207.33978%208.15491%207.0699%208.31385%206.67412L9.65627%203.3312C9.78068%203.0214%2010.2192%203.0214%2010.3437%203.3312Z%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%23FFBD37%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A",starFull:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10.3437%203.3312L11.6861%206.67412C11.8451%207.0699%2012.2165%207.33978%2012.6421%207.36863L16.2362%207.61233C16.5693%207.63492%2016.7048%208.05202%2016.4486%208.26608L13.6841%2010.5758C13.3568%2010.8493%2013.215%2011.2859%2013.319%2011.6996L14.1979%2015.1931C14.2793%2015.5168%2013.9245%2015.7746%2013.6418%2015.5971L10.5908%2013.6817C10.2296%2013.4549%209.77045%2013.4549%209.40924%2013.6817L6.35828%2015.5971C6.07553%2015.7746%205.72072%2015.5168%205.80217%2015.1931L6.68105%2011.6996C6.7851%2011.2859%206.64322%2010.8493%206.31592%2010.5758L3.55145%208.26607C3.29525%208.05202%203.43078%207.63492%203.76386%207.61233L7.358%207.36863C7.78352%207.33978%208.15498%207.0699%208.31391%206.67412L9.65633%203.3312C9.78074%203.0214%2010.2193%203.0214%2010.3437%203.3312Z%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%23FFBD37%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3C%2Fsvg%3E%0A"},progress:{progress0:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%229.99993%22%20r%3D%226.66667%22%20stroke%3D%22%237A7A7A%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3C%2Fsvg%3E%0A",progress25:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%229.99993%22%20r%3D%226.66667%22%20stroke%3D%22%237A7A7A%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3Cpath%20d%3D%22M16.2963%209.99991C16.2963%209.17307%2016.1335%208.35432%2015.8171%207.59042C15.5006%206.82652%2015.0369%206.13242%2014.4522%205.54776C13.8675%204.96309%2013.1734%204.49931%2012.4095%204.18289C11.6456%203.86647%2010.8269%203.70361%2010%203.70361L10%209.99991H16.2963Z%22%20fill%3D%22%237A7A7A%22%2F%3E%0A%3C%2Fsvg%3E%0A",progress50:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%229.99993%22%20r%3D%226.66667%22%20stroke%3D%22%237A7A7A%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3Cpath%20d%3D%22M10%2016.2962C11.6699%2016.2962%2013.2714%2015.6328%2014.4522%2014.4521C15.633%2013.2713%2016.2963%2011.6698%2016.2963%209.99991C16.2963%208.33003%2015.633%206.72854%2014.4522%205.54776C13.2714%204.36697%2011.6699%203.70361%2010%203.70361L10%209.99991L10%2016.2962Z%22%20fill%3D%22%237A7A7A%22%2F%3E%0A%3C%2Fsvg%3E%0A",progress75:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%229.99993%22%20r%3D%226.66667%22%20stroke%3D%22%237A7A7A%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3Cpath%20d%3D%22M3.70374%209.99991C3.70374%2011.2452%204.07301%2012.4625%204.76485%2013.4979C5.4567%2014.5334%206.44005%2015.3404%207.59054%2015.8169C8.74104%2016.2935%2010.007%2016.4182%2011.2284%2016.1752C12.4497%2015.9323%2013.5716%2015.3326%2014.4522%2014.4521C15.3327%2013.5715%2015.9324%2012.4496%2016.1753%2011.2283C16.4183%2010.0069%2016.2936%208.74092%2015.8171%207.59042C15.3405%206.43992%2014.5335%205.45658%2013.4981%204.76473C12.4626%204.07288%2011.2453%203.70361%2010%203.70361L10%209.99991L3.70374%209.99991Z%22%20fill%3D%22%237A7A7A%22%2F%3E%0A%3C%2Fsvg%3E%0A",progress100:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%229.99993%22%20r%3D%226.66667%22%20stroke%3D%22%237A7A7A%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%229.99991%22%20r%3D%226.2963%22%20fill%3D%22%237A7A7A%22%2F%3E%0A%3C%2Fsvg%3E%0A"},signal:{signal0:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%2214.4764%22%20y%3D%222.98926%22%20width%3D%222.3%22%20height%3D%2214.0597%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2210.7255%22%20y%3D%225.93921%22%20width%3D%222.3%22%20height%3D%2211.1096%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%226.97455%22%20y%3D%229.70435%22%20width%3D%222.3%22%20height%3D%227.3443%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%223.22363%22%20y%3D%2213.3302%22%20width%3D%222.3%22%20height%3D%223.71851%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3C%2Fsvg%3E%0A",signal25:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%2214.4764%22%20y%3D%222.98926%22%20width%3D%222.3%22%20height%3D%2214.0597%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2210.7255%22%20y%3D%225.93921%22%20width%3D%222.3%22%20height%3D%2211.1096%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%226.97455%22%20y%3D%229.70435%22%20width%3D%222.3%22%20height%3D%227.3443%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%223.22363%22%20y%3D%2213.3302%22%20width%3D%222.3%22%20height%3D%223.71851%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3C%2Fsvg%3E%0A",signal50:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%2214.4764%22%20y%3D%222.98926%22%20width%3D%222.3%22%20height%3D%2214.0597%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2210.7255%22%20y%3D%225.93921%22%20width%3D%222.3%22%20height%3D%2211.1096%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%226.97455%22%20y%3D%229.70435%22%20width%3D%222.3%22%20height%3D%227.3443%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3Crect%20x%3D%223.22363%22%20y%3D%2213.3302%22%20width%3D%222.3%22%20height%3D%223.71851%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3C%2Fsvg%3E%0A",signal75:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%2214.4764%22%20y%3D%222.98926%22%20width%3D%222.3%22%20height%3D%2214.0597%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2210.7255%22%20y%3D%225.93921%22%20width%3D%222.3%22%20height%3D%2211.1096%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3Crect%20x%3D%226.97455%22%20y%3D%229.70435%22%20width%3D%222.3%22%20height%3D%227.3443%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3Crect%20x%3D%223.22363%22%20y%3D%2213.3302%22%20width%3D%222.3%22%20height%3D%223.71851%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3C%2Fsvg%3E%0A",signal100:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%2214.4764%22%20y%3D%222.98926%22%20width%3D%222.3%22%20height%3D%2214.0597%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3Crect%20x%3D%2210.7255%22%20y%3D%225.93933%22%20width%3D%222.3%22%20height%3D%2211.1096%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3Crect%20x%3D%226.97455%22%20y%3D%229.70447%22%20width%3D%222.3%22%20height%3D%227.3443%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3Crect%20x%3D%223.22363%22%20y%3D%2213.3302%22%20width%3D%222.3%22%20height%3D%223.71851%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3C%2Fsvg%3E%0A"},feeling:{guffaw:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M16.887%2010C16.887%2013.8037%2013.8036%2016.8871%209.99999%2016.8871C6.19638%2016.8871%203.11295%2013.8037%203.11295%2010C3.11295%206.19644%206.19638%203.11301%209.99999%203.11301C13.8036%203.11301%2016.887%206.19644%2016.887%2010Z%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.3%22%2F%3E%0A%3Crect%20x%3D%227.40741%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Crect%20x%3D%2211.1111%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Cpath%20d%3D%22M12.5355%2013.5821C13.0482%2013.1841%2013.3951%2012.6107%2013.5405%2012.0327C13.5934%2011.8226%2013.5051%2011.6349%2013.3518%2011.5331C13.2036%2011.4346%2013.0031%2011.4203%2012.8265%2011.5131C11.0615%2012.4407%208.94609%2012.4427%207.1828%2011.513C7.00629%2011.4199%206.80602%2011.4343%206.65798%2011.5329C6.50518%2011.6346%206.41701%2011.8217%206.46844%2012.0312C6.61029%2012.609%206.95079%2013.1833%207.46449%2013.5821C8.14361%2014.1093%209.05608%2014.3999%2010%2014.3999C10.9439%2014.3999%2011.8564%2014.1093%2012.5355%2013.5821Z%22%20fill%3D%22white%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.4%22%2F%3E%0A%3C%2Fsvg%3E%0A",smile:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%229.99999%22%20cy%3D%2210%22%20r%3D%226.88704%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.3%22%2F%3E%0A%3Crect%20x%3D%227.40741%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Crect%20x%3D%2211.1111%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Cpath%20d%3D%22M7.03705%2011.8518C7.03705%2011.8518%207.77779%2013.7037%2010%2013.7037C12.2222%2013.7037%2012.963%2011.8518%2012.963%2011.8518%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.962963%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E%0A",noninductive:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%229.99999%22%20cy%3D%2210%22%20r%3D%226.88704%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.3%22%2F%3E%0A%3Crect%20x%3D%227.40741%22%20y%3D%227.9259%22%20width%3D%221.48148%22%20height%3D%221.11111%22%20rx%3D%220.555556%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Crect%20x%3D%2211.1111%22%20y%3D%227.9259%22%20width%3D%221.48148%22%20height%3D%221.11111%22%20rx%3D%220.555556%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Cpath%20d%3D%22M7.03705%2012.5927C7.03705%2012.5927%208.14816%2012.5927%2010.3704%2012.5927C12.5926%2012.5927%2012.963%2012.5927%2012.963%2012.5927%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.962963%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E%0A",dissatisfied:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%229.99999%22%20cy%3D%2210%22%20r%3D%226.88704%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.3%22%2F%3E%0A%3Crect%20x%3D%227.40741%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Crect%20x%3D%2211.1111%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Cpath%20d%3D%22M7.03705%2013.7037C7.03705%2013.7037%207.77779%2011.8519%2010%2011.8519C12.2222%2011.8519%2012.963%2013.7037%2012.963%2013.7037%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.962963%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E%0A",impatient:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%229.99999%22%20cy%3D%2210%22%20r%3D%226.88704%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.3%22%2F%3E%0A%3Crect%20x%3D%227.40741%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Crect%20x%3D%2211.1111%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Cpath%20d%3D%22M7.47573%2011.731C6.96306%2012.129%206.61613%2012.7024%206.47071%2013.2804C6.41784%2013.4905%206.50617%2013.6782%206.65942%2013.78C6.80761%2013.8785%207.00813%2013.8928%207.18477%2013.8C8.9498%2012.8724%2011.0652%2012.8704%2012.8285%2013.8002C13.005%2013.8932%2013.2052%2013.8788%2013.3533%2013.7802C13.5061%2013.6785%2013.5942%2013.4914%2013.5428%2013.2819C13.401%2012.7041%2013.0605%2012.1298%2012.5468%2011.731C11.8676%2011.2038%2010.9552%2010.9132%2010.0112%2010.9132C9.06732%2010.9132%208.15485%2011.2038%207.47573%2011.731Z%22%20fill%3D%22white%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.4%22%2F%3E%0A%3C%2Fsvg%3E%0A"},arrow:JSON.parse('{"down-red":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M8.90467%203.99244C8.84611%204.1338%208.84611%204.31301%208.84611%204.67143V13.716L5.92068%2010.7906C5.66724%2010.5371%205.54052%2010.4104%205.39916%2010.3519C5.21067%2010.2738%204.9989%2010.2738%204.81041%2010.3519C4.66905%2010.4104%204.54233%2010.5371%204.28889%2010.7906C4.03545%2011.044%203.90873%2011.1707%203.85018%2011.3121C3.77211%2011.5006%203.77211%2011.7124%203.85018%2011.9008C3.90873%2012.0422%204.03545%2012.1689%204.28889%2012.4224L9.03476%2017.1682C9.07839%2017.2127%209.12737%2017.2617%209.18231%2017.3166L9.18239%2017.3167L9.18241%2017.3167C9.40545%2017.5398%209.53035%2017.6647%209.65346%2017.7313C9.67085%2017.7408%209.6882%2017.7492%209.70577%2017.7564C9.89425%2017.8345%2010.106%2017.8345%2010.2945%2017.7564C10.4359%2017.6979%2010.5626%2017.5712%2010.816%2017.3177C10.8986%2017.2352%2010.9677%2017.1661%2011.0253%2017.1056L15.7095%2012.4214L15.7095%2012.4213C15.963%2012.1679%2016.0897%2012.0412%2016.1482%2011.8998C16.2263%2011.7114%2016.2263%2011.4996%2016.1482%2011.3111C16.0897%2011.1697%2015.963%2011.043%2015.7095%2010.7896C15.4561%2010.5361%2015.3294%2010.4094%2015.188%2010.3509C14.9995%2010.2728%2014.7878%2010.2728%2014.5993%2010.3509C14.4579%2010.4094%2014.3312%2010.5361%2014.0778%2010.7896L14.0777%2010.7896L11.1538%2013.7135V4.67142C11.1538%204.31301%2011.1538%204.1338%2011.0953%203.99244C11.0172%203.80395%2010.8674%203.6542%2010.6789%203.57613C10.5376%203.51758%2010.3584%203.51758%209.99996%203.51758C9.64154%203.51758%209.46233%203.51758%209.32097%203.57613C9.13249%203.6542%208.98274%203.80395%208.90467%203.99244Z%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A","right-gold":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M3.32508%2011.7609C3.46644%2011.8194%203.64565%2011.8194%204.00407%2011.8194H13.049L10.1235%2014.745C9.87002%2014.9984%209.7433%2015.1251%209.68475%2015.2665C9.60668%2015.455%209.60668%2015.6668%209.68475%2015.8552C9.7433%2015.9966%209.87002%2016.1233%2010.1235%2016.3768C10.3769%2016.6302%2010.5036%2016.7569%2010.645%2016.8155C10.8335%2016.8935%2011.0452%2016.8935%2011.2337%2016.8155C11.3751%2016.7569%2011.5018%2016.6302%2011.7552%2016.3768L16.5105%2011.6215C16.5524%2011.5803%2016.5983%2011.5344%2016.6493%2011.4834L16.6495%2011.4831C16.8561%2011.2765%2016.9785%2011.1542%2017.0484%2011.0394C17.0648%2011.0128%2017.0782%2010.9866%2017.0893%2010.9599C17.1674%2010.7714%2017.1674%2010.5596%2017.0893%2010.3711C17.0308%2010.2298%2016.904%2010.1031%2016.6506%209.84962C16.5685%209.76752%2016.4997%209.69872%2016.4394%209.64123L11.7542%204.95601C11.5007%204.70257%2011.374%204.57585%2011.2327%204.5173C11.0442%204.43923%2010.8324%204.43923%2010.6439%204.5173C10.5026%204.57585%2010.3758%204.70257%2010.1224%204.95601L10.1224%204.95601C9.86895%205.20945%209.74223%205.33617%209.68368%205.47753C9.60561%205.66601%209.60561%205.87779%209.68368%206.06627C9.74223%206.20764%209.86895%206.33436%2010.1224%206.5878L13.0463%209.51175H4.00407C3.64565%209.51175%203.46644%209.51175%203.32508%209.5703C3.1366%209.64837%202.98685%209.79812%202.90877%209.98661C2.85022%2010.128%202.85022%2010.3072%202.85022%2010.6656C2.85022%2011.024%202.85022%2011.2032%202.90877%2011.3446C2.98685%2011.5331%203.1366%2011.6828%203.32508%2011.7609Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A","up-green":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M11.0936%2017.3406C11.1522%2017.1992%2011.1522%2017.02%2011.1522%2016.6616V7.61701L14.0776%2010.5424C14.3311%2010.7959%2014.4578%2010.9226%2014.5991%2010.9811C14.7876%2011.0592%2014.9994%2011.0592%2015.1879%2010.9811C15.3292%2010.9226%2015.456%2010.7959%2015.7094%2010.5424C15.9628%2010.289%2016.0896%2010.1623%2016.1481%2010.0209C16.2262%209.83243%2016.2262%209.62066%2016.1481%209.43217C16.0896%209.29081%2015.9628%209.16409%2015.7094%208.91065L10.9645%204.16576C10.9207%204.12105%2010.8714%204.07178%2010.8161%204.01648L10.8159%204.0163C10.5916%203.792%2010.4666%203.66696%2010.3428%203.60058C10.3261%203.59154%2010.3094%203.58358%2010.2925%203.57658C10.104%203.49851%209.89226%203.49851%209.70378%203.57658C9.56242%203.63514%209.4357%203.76186%209.18226%204.0153C9.09955%204.09801%209.03034%204.16722%208.97258%204.22785L4.28878%208.91166C4.03534%209.1651%203.90862%209.29182%203.85006%209.43318C3.77199%209.62166%203.77199%209.83344%203.85006%2010.0219C3.90862%2010.1633%204.03534%2010.29%204.28878%2010.5434C4.54221%2010.7969%204.66893%2010.9236%204.8103%2010.9822C4.99878%2011.0602%205.21056%2011.0602%205.39904%2010.9822C5.5404%2010.9236%205.66712%2010.7969%205.92056%2010.5434L5.92056%2010.5434L8.84449%207.61951V16.6616C8.84449%2017.02%208.84449%2017.1992%208.90305%2017.3406C8.98112%2017.5291%209.13087%2017.6788%209.31935%2017.7569C9.46072%2017.8154%209.63992%2017.8154%209.99834%2017.8154C10.3568%2017.8154%2010.536%2017.8154%2010.6773%2017.7569C10.8658%2017.6788%2011.0156%2017.5291%2011.0936%2017.3406Z%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3C%2Fsvg%3E%0A","rightAndDown-gold":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.5062%206.72126C4.56476%206.86262%204.69148%206.98934%204.94492%207.24278L11.3404%2013.6382L7.20313%2013.6382C6.84471%2013.6382%206.66551%2013.6382%206.52414%2013.6968C6.33566%2013.7749%206.18591%2013.9246%206.10784%2014.1131C6.04928%2014.2545%206.04928%2014.4337%206.04928%2014.7921C6.04928%2015.1505%206.04928%2015.3297%206.10784%2015.4711C6.18591%2015.6596%206.33566%2015.8093%206.52414%2015.8874C6.66551%2015.9459%206.84471%2015.9459%207.20313%2015.9459L13.9194%2015.9459C13.9805%2015.9465%2014.0484%2015.9465%2014.1243%2015.9465H14.1243C14.4353%2015.9465%2014.6114%2015.9465%2014.7449%2015.9082C14.7659%2015.9023%2014.7859%2015.8954%2014.8052%2015.8874C14.9937%2015.8093%2015.1434%2015.6596%2015.2215%2015.4711C15.2801%2015.3297%2015.2801%2015.1505%2015.2801%2014.7921C15.2801%2014.6767%2015.2801%2014.5799%2015.2781%2014.497L15.2781%207.86957C15.2781%207.51115%2015.2781%207.33194%2015.2195%207.19058C15.1415%207.0021%2014.9917%206.85235%2014.8032%206.77428C14.6619%206.71572%2014.4827%206.71572%2014.1243%206.71572C13.7658%206.71572%2013.5866%206.71572%2013.4453%206.77428C13.2568%206.85235%2013.107%207.0021%2013.029%207.19058C12.9704%207.33194%2012.9704%207.51115%2012.9704%207.86957L12.9704%2012.0047L6.5767%205.61099C6.32326%205.35755%206.19654%205.23083%206.05518%205.17228C5.8667%205.09421%205.65492%205.09421%205.46644%205.17228C5.32508%205.23083%205.19836%205.35755%204.94492%205.61099C4.69148%205.86443%204.56476%205.99115%204.5062%206.13251C4.42813%206.32099%204.42813%206.53277%204.5062%206.72126Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A","rightAndUp-gold":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6.05431%2016.1597C6.19567%2016.1012%206.32239%2015.9745%206.57583%2015.721L12.9712%209.32568L12.9712%2013.4626C12.9712%2013.821%2012.9712%2014.0002%2013.0297%2014.1416C13.1078%2014.3301%2013.2576%2014.4798%2013.446%2014.5579C13.5874%2014.6164%2013.7666%2014.6164%2014.125%2014.6164C14.4834%2014.6164%2014.6626%2014.6164%2014.804%2014.5579C14.9925%2014.4798%2015.1422%2014.3301%2015.2203%2014.1416C15.2789%2014.0002%2015.2789%2013.821%2015.2789%2013.4626L15.2789%206.75233C15.2795%206.68972%2015.2795%206.62004%2015.2795%206.54182L15.2795%206.54157C15.2795%206.22585%2015.2795%206.04918%2015.2395%205.91495C15.2339%205.89605%2015.2276%205.878%2015.2203%205.86053C15.1422%205.67204%2014.9925%205.52229%2014.804%205.44422C14.6626%205.38567%2014.4834%205.38567%2014.125%205.38567L14.125%205.38567C14.0075%205.38567%2013.9093%205.38567%2013.8254%205.38773L7.20256%205.38773C6.84414%205.38773%206.66493%205.38773%206.52357%205.44628C6.33509%205.52436%206.18534%205.6741%206.10727%205.86259C6.04871%206.00395%206.04871%206.18315%206.04871%206.54156V6.54157L6.04871%206.54159C6.04871%206.9%206.04871%207.0792%206.10727%207.22056C6.18534%207.40905%206.33509%207.55879%206.52357%207.63687C6.66493%207.69542%206.84414%207.69542%207.20256%207.69542H11.3379L4.94405%2014.0892C4.69061%2014.3427%204.56389%2014.4694%204.50533%2014.6108C4.42726%2014.7992%204.42726%2015.011%204.50533%2015.1995C4.56389%2015.3409%204.69061%2015.4676%204.94405%2015.721C5.19749%2015.9745%205.32421%2016.1012%205.46557%2016.1597C5.65405%2016.2378%205.86583%2016.2378%206.05431%2016.1597Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A","down-gray":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M8.90467%203.99244C8.84611%204.1338%208.84611%204.31301%208.84611%204.67143V13.716L5.92068%2010.7906C5.66724%2010.5371%205.54052%2010.4104%205.39916%2010.3519C5.21067%2010.2738%204.9989%2010.2738%204.81041%2010.3519C4.66905%2010.4104%204.54233%2010.5371%204.28889%2010.7906C4.03545%2011.044%203.90873%2011.1707%203.85018%2011.3121C3.77211%2011.5006%203.77211%2011.7124%203.85018%2011.9008C3.90873%2012.0422%204.03545%2012.1689%204.28889%2012.4224L9.03476%2017.1682C9.07839%2017.2127%209.12737%2017.2617%209.18231%2017.3166L9.18239%2017.3167L9.18241%2017.3167C9.40545%2017.5398%209.53035%2017.6647%209.65346%2017.7313C9.67085%2017.7408%209.6882%2017.7492%209.70577%2017.7564C9.89425%2017.8345%2010.106%2017.8345%2010.2945%2017.7564C10.4359%2017.6979%2010.5626%2017.5712%2010.816%2017.3177C10.8986%2017.2352%2010.9677%2017.1661%2011.0253%2017.1056L15.7095%2012.4214L15.7095%2012.4213C15.963%2012.1679%2016.0897%2012.0412%2016.1482%2011.8998C16.2263%2011.7114%2016.2263%2011.4996%2016.1482%2011.3111C16.0897%2011.1697%2015.963%2011.043%2015.7095%2010.7896C15.4561%2010.5361%2015.3294%2010.4094%2015.188%2010.3509C14.9995%2010.2728%2014.7878%2010.2728%2014.5993%2010.3509C14.4579%2010.4094%2014.3312%2010.5361%2014.0778%2010.7896L14.0777%2010.7896L11.1538%2013.7135V4.67142C11.1538%204.31301%2011.1538%204.1338%2011.0953%203.99244C11.0172%203.80395%2010.8674%203.6542%2010.6789%203.57613C10.5376%203.51758%2010.3584%203.51758%209.99996%203.51758C9.64154%203.51758%209.46233%203.51758%209.32097%203.57613C9.13249%203.6542%208.98274%203.80395%208.90467%203.99244Z%22%20fill%3D%22%23999999%22%2F%3E%0A%3C%2Fsvg%3E%0A","right-gray":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M3.32508%2011.7609C3.46644%2011.8194%203.64565%2011.8194%204.00407%2011.8194H13.049L10.1235%2014.745C9.87002%2014.9984%209.7433%2015.1251%209.68475%2015.2665C9.60668%2015.455%209.60668%2015.6668%209.68475%2015.8552C9.7433%2015.9966%209.87002%2016.1233%2010.1235%2016.3768C10.3769%2016.6302%2010.5036%2016.7569%2010.645%2016.8155C10.8335%2016.8935%2011.0452%2016.8935%2011.2337%2016.8155C11.3751%2016.7569%2011.5018%2016.6302%2011.7552%2016.3768L16.5105%2011.6215C16.5524%2011.5803%2016.5983%2011.5344%2016.6493%2011.4834L16.6495%2011.4831C16.8561%2011.2765%2016.9785%2011.1542%2017.0484%2011.0394C17.0648%2011.0128%2017.0782%2010.9866%2017.0893%2010.9599C17.1674%2010.7714%2017.1674%2010.5596%2017.0893%2010.3711C17.0308%2010.2298%2016.904%2010.1031%2016.6506%209.84962C16.5685%209.76752%2016.4997%209.69872%2016.4394%209.64123L11.7542%204.95601C11.5007%204.70257%2011.374%204.57585%2011.2327%204.5173C11.0442%204.43923%2010.8324%204.43923%2010.6439%204.5173C10.5026%204.57585%2010.3758%204.70257%2010.1224%204.95601L10.1224%204.95601C9.86895%205.20945%209.74223%205.33617%209.68368%205.47753C9.60561%205.66601%209.60561%205.87779%209.68368%206.06627C9.74223%206.20764%209.86895%206.33436%2010.1224%206.5878L13.0463%209.51175H4.00407C3.64565%209.51175%203.46644%209.51175%203.32508%209.5703C3.1366%209.64837%202.98685%209.79812%202.90877%209.98661C2.85022%2010.128%202.85022%2010.3072%202.85022%2010.6656C2.85022%2011.024%202.85022%2011.2032%202.90877%2011.3446C2.98685%2011.5331%203.1366%2011.6828%203.32508%2011.7609Z%22%20fill%3D%22%23999999%22%2F%3E%0A%3C%2Fsvg%3E%0A","up-gray":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M11.0936%2017.3406C11.1522%2017.1992%2011.1522%2017.02%2011.1522%2016.6616V7.61701L14.0776%2010.5424C14.3311%2010.7959%2014.4578%2010.9226%2014.5991%2010.9811C14.7876%2011.0592%2014.9994%2011.0592%2015.1879%2010.9811C15.3292%2010.9226%2015.456%2010.7959%2015.7094%2010.5424C15.9628%2010.289%2016.0896%2010.1623%2016.1481%2010.0209C16.2262%209.83243%2016.2262%209.62066%2016.1481%209.43217C16.0896%209.29081%2015.9628%209.16409%2015.7094%208.91065L10.9645%204.16576C10.9207%204.12105%2010.8714%204.07178%2010.8161%204.01648L10.8159%204.0163C10.5916%203.792%2010.4666%203.66696%2010.3428%203.60058C10.3261%203.59154%2010.3094%203.58358%2010.2925%203.57658C10.104%203.49851%209.89226%203.49851%209.70378%203.57658C9.56242%203.63514%209.4357%203.76186%209.18226%204.0153C9.09955%204.09801%209.03034%204.16722%208.97258%204.22785L4.28878%208.91166C4.03534%209.1651%203.90862%209.29182%203.85006%209.43318C3.77199%209.62166%203.77199%209.83344%203.85006%2010.0219C3.90862%2010.1633%204.03534%2010.29%204.28878%2010.5434C4.54221%2010.7969%204.66893%2010.9236%204.8103%2010.9822C4.99878%2011.0602%205.21056%2011.0602%205.39904%2010.9822C5.5404%2010.9236%205.66712%2010.7969%205.92056%2010.5434L5.92056%2010.5434L8.84449%207.61951V16.6616C8.84449%2017.02%208.84449%2017.1992%208.90305%2017.3406C8.98112%2017.5291%209.13087%2017.6788%209.31935%2017.7569C9.46072%2017.8154%209.63992%2017.8154%209.99834%2017.8154C10.3568%2017.8154%2010.536%2017.8154%2010.6773%2017.7569C10.8658%2017.6788%2011.0156%2017.5291%2011.0936%2017.3406Z%22%20fill%3D%22%23999999%22%2F%3E%0A%3C%2Fsvg%3E%0A","rightAndDown-gray":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.5062%206.72126C4.56476%206.86262%204.69148%206.98934%204.94492%207.24278L11.3404%2013.6382L7.20313%2013.6382C6.84471%2013.6382%206.66551%2013.6382%206.52414%2013.6968C6.33566%2013.7749%206.18591%2013.9246%206.10784%2014.1131C6.04928%2014.2545%206.04928%2014.4337%206.04928%2014.7921C6.04928%2015.1505%206.04928%2015.3297%206.10784%2015.4711C6.18591%2015.6596%206.33566%2015.8093%206.52414%2015.8874C6.66551%2015.9459%206.84471%2015.9459%207.20313%2015.9459L13.9194%2015.9459C13.9805%2015.9465%2014.0484%2015.9465%2014.1243%2015.9465H14.1243C14.4353%2015.9465%2014.6114%2015.9465%2014.7449%2015.9082C14.7659%2015.9023%2014.7859%2015.8954%2014.8052%2015.8874C14.9937%2015.8093%2015.1434%2015.6596%2015.2215%2015.4711C15.2801%2015.3297%2015.2801%2015.1505%2015.2801%2014.7921C15.2801%2014.6767%2015.2801%2014.5799%2015.2781%2014.497L15.2781%207.86957C15.2781%207.51115%2015.2781%207.33194%2015.2195%207.19058C15.1415%207.0021%2014.9917%206.85235%2014.8032%206.77428C14.6619%206.71572%2014.4827%206.71572%2014.1243%206.71572C13.7658%206.71572%2013.5866%206.71572%2013.4453%206.77428C13.2568%206.85235%2013.107%207.0021%2013.029%207.19058C12.9704%207.33194%2012.9704%207.51115%2012.9704%207.86957L12.9704%2012.0047L6.5767%205.61099C6.32326%205.35755%206.19654%205.23083%206.05518%205.17228C5.8667%205.09421%205.65492%205.09421%205.46644%205.17228C5.32508%205.23083%205.19836%205.35755%204.94492%205.61099C4.69148%205.86443%204.56476%205.99115%204.5062%206.13251C4.42813%206.32099%204.42813%206.53277%204.5062%206.72126Z%22%20fill%3D%22%23999999%22%2F%3E%0A%3C%2Fsvg%3E%0A","rightAndUp-gray":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6.05431%2016.1597C6.19567%2016.1012%206.32239%2015.9745%206.57583%2015.721L12.9712%209.32568L12.9712%2013.4626C12.9712%2013.821%2012.9712%2014.0002%2013.0297%2014.1416C13.1078%2014.3301%2013.2576%2014.4798%2013.446%2014.5579C13.5874%2014.6164%2013.7666%2014.6164%2014.125%2014.6164C14.4834%2014.6164%2014.6626%2014.6164%2014.804%2014.5579C14.9925%2014.4798%2015.1422%2014.3301%2015.2203%2014.1416C15.2789%2014.0002%2015.2789%2013.821%2015.2789%2013.4626L15.2789%206.75233C15.2795%206.68972%2015.2795%206.62004%2015.2795%206.54182L15.2795%206.54157C15.2795%206.22585%2015.2795%206.04918%2015.2395%205.91495C15.2339%205.89605%2015.2276%205.878%2015.2203%205.86053C15.1422%205.67204%2014.9925%205.52229%2014.804%205.44422C14.6626%205.38567%2014.4834%205.38567%2014.125%205.38567L14.125%205.38567C14.0075%205.38567%2013.9093%205.38567%2013.8254%205.38773L7.20256%205.38773C6.84414%205.38773%206.66493%205.38773%206.52357%205.44628C6.33509%205.52436%206.18534%205.6741%206.10727%205.86259C6.04871%206.00395%206.04871%206.18315%206.04871%206.54156V6.54157L6.04871%206.54159C6.04871%206.9%206.04871%207.0792%206.10727%207.22056C6.18534%207.40905%206.33509%207.55879%206.52357%207.63687C6.66493%207.69542%206.84414%207.69542%207.20256%207.69542H11.3379L4.94405%2014.0892C4.69061%2014.3427%204.56389%2014.4694%204.50533%2014.6108C4.42726%2014.7992%204.42726%2015.011%204.50533%2015.1995C4.56389%2015.3409%204.69061%2015.4676%204.94405%2015.721C5.19749%2015.9745%205.32421%2016.1012%205.46557%2016.1597C5.65405%2016.2378%205.86583%2016.2378%206.05431%2016.1597Z%22%20fill%3D%22%23999999%22%2F%3E%0A%3C%2Fsvg%3E%0A"}'),shape:{cross:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%223.70374%22%20y%3D%228.14795%22%20width%3D%2212.5926%22%20height%3D%223.7037%22%20rx%3D%220.740741%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A",up:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M9.44533%205.81157C9.74012%205.47858%2010.2598%205.47858%2010.5546%205.81157L16.2868%2012.2867C16.71%2012.7647%2016.3706%2013.5184%2015.7322%2013.5184H4.26776C3.62933%2013.5184%203.28995%2012.7647%203.71313%2012.2867L9.44533%205.81157Z%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3C%2Fsvg%3E%0A",down:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10.5547%2014.1884C10.2599%2014.5214%209.74019%2014.5214%209.4454%2014.1884L3.71321%207.71335C3.29002%207.23532%203.6294%206.48161%204.26784%206.48161L15.7322%206.48161C16.3707%206.48161%2016.7101%207.23532%2016.2869%207.71335L10.5547%2014.1884Z%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A","rhomboid-red":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M2.1415%2011.1984C1.8412%2010.9074%201.8412%2010.4256%202.1415%2010.1346L9.48467%203.01785C9.77196%202.73942%2010.2284%202.73942%2010.5157%203.01786L17.8586%2010.1346C18.1589%2010.4256%2018.1589%2010.9074%2017.8586%2011.1984L10.5157%2018.3151C10.2284%2018.5936%209.77196%2018.5936%209.48467%2018.3152L2.1415%2011.1984Z%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A","roundness-greed":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210.6664%22%20r%3D%227.03704%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3C%2Fsvg%3E%0A","roundness-gold":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210.6664%22%20r%3D%227.03704%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A","roundness-red":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210.6664%22%20r%3D%227.03704%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A","roundness-pink":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210.6664%22%20r%3D%227.03704%22%20fill%3D%22%23FB9D9D%22%2F%3E%0A%3C%2Fsvg%3E%0A","roundness-gray":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210.6664%22%20r%3D%227.03704%22%20fill%3D%22%23999999%22%2F%3E%0A%3C%2Fsvg%3E%0A","roundness-black":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210.6664%22%20r%3D%227.03704%22%20fill%3D%22black%22%2F%3E%0A%3C%2Fsvg%3E%0A","triangle-gold":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cg%20clip-path%3D%22url(%23clip0_613_237)%22%3E%0A%3Cpath%20d%3D%22M9.32308%204.41301C9.58368%203.82623%2010.4164%203.82623%2010.677%204.413L15.9526%2016.2917C16.1701%2016.7815%2015.8115%2017.3331%2015.2756%2017.3331H4.72454C4.18858%2017.3331%203.83002%2016.7815%204.04756%2016.2917L9.32308%204.41301Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fg%3E%0A%3Cdefs%3E%0A%3CclipPath%20id%3D%22clip0_613_237%22%3E%0A%3Crect%20width%3D%2220%22%20height%3D%2220%22%20fill%3D%22white%22%20transform%3D%22translate(0%200.666504)%22%2F%3E%0A%3C%2FclipPath%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E%0A","indicate-greed":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%222.76941%22%20y%3D%222.76941%22%20width%3D%2214.4612%22%20height%3D%2214.4612%22%20rx%3D%223%22%20fill%3D%22black%22%2F%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%224.5%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3C%2Fsvg%3E%0A","indicate-gold":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%222.76941%22%20y%3D%222.76941%22%20width%3D%2214.4612%22%20height%3D%2214.4612%22%20rx%3D%223%22%20fill%3D%22black%22%2F%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%224.5%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A","indicate-red":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%222.76941%22%20y%3D%222.76941%22%20width%3D%2214.4612%22%20height%3D%2214.4612%22%20rx%3D%223%22%20fill%3D%22black%22%2F%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%224.5%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A"},feedback2:{mistake2:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.12194%206.33702C4.1805%206.47839%204.30722%206.6051%204.56066%206.85854L8.36822%2010.6661L4.56062%2014.4737C4.30718%2014.7272%204.18046%2014.8539%204.12191%2014.9952C4.04384%2015.1837%204.04384%2015.3955%204.12191%2015.584C4.18046%2015.7253%204.30718%2015.8521%204.56062%2016.1055C4.81406%2016.3589%204.94078%2016.4857%205.08214%2016.5442C5.27062%2016.6223%205.4824%2016.6223%205.67089%2016.5442C5.81225%2016.4857%205.93897%2016.3589%206.19241%2016.1055L10%2012.2979L13.8074%2016.1053C14.0609%2016.3588%2014.1876%2016.4855%2014.329%2016.544C14.5174%2016.6221%2014.7292%2016.6221%2014.9177%2016.544C15.0591%2016.4855%2015.1858%2016.3588%2015.4392%2016.1053L15.4392%2016.1053C15.6927%2015.8519%2015.8194%2015.7252%2015.8779%2015.5838C15.956%2015.3953%2015.956%2015.1835%2015.8779%2014.9951C15.8194%2014.8537%2015.6927%2014.727%2015.4392%2014.4735L15.4392%2014.4735L11.6318%2010.6661L15.4392%206.85872C15.6926%206.60528%2015.8193%206.47856%2015.8779%206.3372C15.956%206.14871%2015.956%205.93694%2015.8779%205.74845C15.8193%205.60709%2015.6926%205.48037%2015.4392%205.22693C15.1857%204.97349%2015.059%204.84677%2014.9177%204.78822C14.7292%204.71015%2014.5174%204.71015%2014.3289%204.78822C14.1876%204.84677%2014.0608%204.97349%2013.8074%205.22693L10%209.03433L6.19244%205.22676C5.939%204.97332%205.81228%204.8466%205.67092%204.78805C5.48244%204.70997%205.27066%204.70997%205.08218%204.78805C4.94082%204.8466%204.8141%204.97332%204.56066%205.22676L4.56066%205.22676C4.30722%205.4802%204.1805%205.60692%204.12194%205.74828C4.04387%205.93676%204.04387%206.14854%204.12194%206.33702Z%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A",warn2:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M8.49778%205.00963C8.48513%204.56774%208.47881%204.3468%208.56086%204.17746C8.63301%204.02856%208.75124%203.90689%208.89802%203.83052C9.06494%203.74365%209.28597%203.74365%209.72805%203.74365H10.272C10.714%203.74365%2010.9351%203.74365%2011.102%203.83052C11.2488%203.9069%2011.367%204.02856%2011.4392%204.17746C11.5212%204.3468%2011.5149%204.56775%2011.5022%205.00964L11.2644%2013.3173C11.2524%2013.737%2011.2464%2013.9468%2011.1609%2014.1065C11.0857%2014.2471%2010.9687%2014.3609%2010.826%2014.432C10.6639%2014.5129%2010.454%2014.5129%2010.0342%2014.5129H9.96582C9.54601%2014.5129%209.33611%2014.5129%209.17397%2014.432C9.0313%2014.3609%208.91426%2014.2471%208.83904%2014.1065C8.75357%2013.9468%208.74756%2013.737%208.73555%2013.3173L8.49778%205.00963Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3Crect%20x%3D%228.76917%22%20y%3D%2215.2817%22%20width%3D%222.46154%22%20height%3D%222.46154%22%20rx%3D%220.769231%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A",correct2:"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cg%20clip-path%3D%22url(%23clip0_613_248)%22%3E%0A%3Cpath%20d%3D%22M15.689%205.69723C15.5476%205.75578%2015.4209%205.8825%2015.1675%206.13594L7.82436%2013.4791L4.83279%2010.4875C4.57935%2010.2341%204.45263%2010.1073%204.31127%2010.0488C4.12278%209.97071%203.91101%209.97071%203.72252%2010.0488C3.58116%2010.1073%203.45444%2010.2341%203.201%2010.4875C2.94756%2010.7409%202.82084%2010.8676%202.76229%2011.009C2.68422%2011.1975%202.68422%2011.4093%202.76229%2011.5978C2.82084%2011.7391%202.94756%2011.8658%203.201%2012.1193L7.0085%2015.9268C7.26194%2016.1802%207.38866%2016.3069%207.53002%2016.3655C7.7185%2016.4436%207.93028%2016.4436%208.11876%2016.3655C8.26013%2016.3069%208.38685%2016.1802%208.64028%2015.9268C8.66387%2015.9032%208.68636%2015.8807%208.7078%2015.8592L16.7993%207.76772C17.0527%207.51428%2017.1794%207.38756%2017.238%207.2462C17.3161%207.05772%2017.3161%206.84594%2017.238%206.65746C17.1794%206.5161%2017.0527%206.38938%2016.7993%206.13594C16.5458%205.8825%2016.4191%205.75578%2016.2777%205.69723C16.0893%205.61915%2015.8775%205.61915%2015.689%205.69723Z%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3C%2Fg%3E%0A%3Cdefs%3E%0A%3CclipPath%20id%3D%22clip0_613_248%22%3E%0A%3Crect%20width%3D%2220%22%20height%3D%2220%22%20fill%3D%22white%22%20transform%3D%22translate(0%200.666504)%22%2F%3E%0A%3C%2FclipPath%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E%0A"},flag:{"flag-green":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M15.4274%204.74935C14.0982%205.1012%2013.1363%205.13675%2012.3604%205.03379C11.5776%204.93009%2010.9487%204.68342%2010.2456%204.40416L10.2246%204.39527C9.53411%204.1212%208.76945%203.8175%207.81312%203.69157C6.84279%203.56268%205.71016%203.61898%204.24802%204.0049C4.09343%204.04217%203.95538%204.13393%203.85649%204.26515C3.7576%204.39636%203.70374%204.55925%203.70374%204.72712V17.3197C3.70374%2017.5162%203.79534%2017.7046%203.92654%2017.8435C4.05773%2017.9824%204.25893%2018.0605%204.44448%2018.0605C4.63002%2018.0605%204.84911%2017.9824%204.98031%2017.8435C5.11151%2017.7046%205.18522%2017.5162%205.18522%2017.3197V14.9123V12.5049C6.24649%2012.2738%206.97081%2012.2605%207.63962%2012.3486C8.42246%2012.4523%209.05139%2012.699%209.75448%2012.9782L9.77546%2012.9871C10.466%2013.2612%2011.2306%2013.5649%2012.1869%2013.6908C13.1601%2013.8197%2014.2976%2013.7627%2015.7667%2013.3738C15.8866%2013.3421%2016.0727%2013.2135%2016.1483%2013.111C16.2238%2013.0084%2016.2963%2012.8204%2016.2963%2012.6553V5.46787C16.2963%205.35535%2016.2721%205.24432%2016.2255%205.1432C16.1788%205.04208%2016.1111%204.95353%2016.0274%204.88428C15.9436%204.81502%2015.846%204.76688%2015.7421%204.7435C15.6382%204.72012%2015.494%204.73173%2015.4274%204.74935Z%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3C%2Fsvg%3E%0A","flag-gold":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M15.4274%204.74935C14.0982%205.1012%2013.1363%205.13675%2012.3604%205.03379C11.5776%204.93009%2010.9487%204.68342%2010.2456%204.40416L10.2246%204.39527C9.53411%204.1212%208.76945%203.8175%207.81312%203.69157C6.84279%203.56268%205.71016%203.61898%204.24802%204.0049C4.09343%204.04217%203.95538%204.13393%203.85649%204.26515C3.7576%204.39636%203.70374%204.55925%203.70374%204.72712V17.3197C3.70374%2017.5162%203.79534%2017.7046%203.92654%2017.8435C4.05773%2017.9824%204.25893%2018.0605%204.44448%2018.0605C4.63002%2018.0605%204.84911%2017.9824%204.98031%2017.8435C5.11151%2017.7046%205.18522%2017.5162%205.18522%2017.3197V14.9123V12.5049C6.24649%2012.2738%206.97081%2012.2605%207.63962%2012.3486C8.42246%2012.4523%209.05139%2012.699%209.75448%2012.9782L9.77546%2012.9871C10.466%2013.2612%2011.2306%2013.5649%2012.1869%2013.6908C13.1601%2013.8197%2014.2976%2013.7627%2015.7667%2013.3738C15.8866%2013.3421%2016.0727%2013.2135%2016.1483%2013.111C16.2238%2013.0084%2016.2963%2012.8204%2016.2963%2012.6553V5.46787C16.2963%205.35535%2016.2721%205.24432%2016.2255%205.1432C16.1788%205.04208%2016.1111%204.95353%2016.0274%204.88428C15.9436%204.81502%2015.846%204.76688%2015.7421%204.7435C15.6382%204.72012%2015.494%204.73173%2015.4274%204.74935Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A","flag-red":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M15.4274%204.74935C14.0982%205.1012%2013.1363%205.13675%2012.3604%205.03379C11.5776%204.93009%2010.9487%204.68342%2010.2456%204.40416L10.2246%204.39527C9.53411%204.1212%208.76945%203.8175%207.81312%203.69157C6.84279%203.56268%205.71016%203.61898%204.24802%204.0049C4.09343%204.04217%203.95538%204.13393%203.85649%204.26515C3.7576%204.39636%203.70374%204.55925%203.70374%204.72712V17.3197C3.70374%2017.5162%203.79534%2017.7046%203.92654%2017.8435C4.05773%2017.9824%204.25893%2018.0605%204.44448%2018.0605C4.63002%2018.0605%204.84911%2017.9824%204.98031%2017.8435C5.11151%2017.7046%205.18522%2017.5162%205.18522%2017.3197V14.9123V12.5049C6.24649%2012.2738%206.97081%2012.2605%207.63962%2012.3486C8.42246%2012.4523%209.05139%2012.699%209.75448%2012.9782L9.77546%2012.9871C10.466%2013.2612%2011.2306%2013.5649%2012.1869%2013.6908C13.1601%2013.8197%2014.2976%2013.7627%2015.7667%2013.3738C15.8866%2013.3421%2016.0727%2013.2135%2016.1483%2013.111C16.2238%2013.0084%2016.2963%2012.8204%2016.2963%2012.6553V5.46787C16.2963%205.35535%2016.2721%205.24432%2016.2255%205.1432C16.1788%205.04208%2016.1111%204.95353%2016.0274%204.88428C15.9436%204.81502%2015.846%204.76688%2015.7421%204.7435C15.6382%204.72012%2015.494%204.73173%2015.4274%204.74935Z%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A"},cell:{"cell-0":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%224%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2211%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%224%22%20y%3D%224.00098%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2211%22%20y%3D%224.00098%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3C%2Fsvg%3E%0A","cell-25":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%224%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2211%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%224.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%2211%22%20y%3D%224.00098%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3C%2Fsvg%3E%0A","cell-50":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%224%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2211%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%224.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%2211.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3C%2Fsvg%3E%0A","cell-75":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%224.25%22%20y%3D%2211.251%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%2211%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%224.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%2211.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3C%2Fsvg%3E%0A","cell-100":"data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%224.25%22%20y%3D%2211.251%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%2211.25%22%20y%3D%2211.251%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%224.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%2211.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3C%2Fsvg%3E%0A"}},V2=[{title:"sheet.cf.iconSet.direction",group:[{name:"3Arrows",list:[m.arrow["up-green"],m.arrow["right-gold"],m.arrow["down-red"]]},{name:"3ArrowsGray",list:[m.arrow["up-gray"],m.arrow["right-gray"],m.arrow["down-gray"]]},{name:"4Arrows",list:[m.arrow["up-green"],m.arrow["rightAndUp-gold"],m.arrow["rightAndDown-gold"],m.arrow["down-red"]]},{name:"4ArrowsGray",list:[m.arrow["up-gray"],m.arrow["rightAndUp-gray"],m.arrow["rightAndDown-gray"],m.arrow["down-gray"]]},{name:"5Arrows",list:[m.arrow["up-green"],m.arrow["rightAndUp-gold"],m.arrow["right-gold"],m.arrow["rightAndDown-gold"],m.arrow["down-red"]]},{name:"5ArrowsGray",list:[m.arrow["up-gray"],m.arrow["rightAndUp-gray"],m.arrow["right-gray"],m.arrow["rightAndDown-gray"],m.arrow["down-gray"]]},{name:"3Triangles",list:[m.shape.up,m.shape.cross,m.shape.down]}]},{title:"sheet.cf.iconSet.shape",group:[{name:"3TrafficLights1",list:[m.shape["roundness-greed"],m.shape["roundness-gold"],m.shape["roundness-red"]]},{name:"3Signs",list:[m.shape["roundness-greed"],m.shape["triangle-gold"],m.shape["rhomboid-red"]]},{name:"3TrafficLights2",list:[m.shape["indicate-greed"],m.shape["indicate-gold"],m.shape["indicate-red"]]},{name:"4RedToBlack",list:[m.shape["roundness-red"],m.shape["roundness-pink"],m.shape["roundness-gray"],m.shape["roundness-black"]]},{name:"4TrafficLights",list:[m.shape["roundness-greed"],m.shape["roundness-gold"],m.shape["roundness-red"],m.shape["roundness-black"]]}]},{title:"sheet.cf.iconSet.mark",group:[{name:"3Symbols",list:[m.feedback.correct,m.feedback.warn,m.feedback.mistake]},{name:"3Symbols2",list:[m.feedback2.correct2,m.feedback2.warn2,m.feedback2.mistake2]},{name:"3Flags",list:[m.flag["flag-green"],m.flag["flag-gold"],m.flag["flag-red"]]}]},{title:"sheet.cf.iconSet.rank",group:[{name:"4Rating",list:[m.signal.signal25,m.signal.signal50,m.signal.signal75,m.signal.signal100]},{name:"5Rating",list:[m.signal.signal0,m.signal.signal25,m.signal.signal50,m.signal.signal75,m.signal.signal100]},{name:"5Quarters",list:[m.progress.progress100,m.progress.progress75,m.progress.progress50,m.progress.progress25,m.progress.progress0]},{name:"_5Felling",list:[m.feeling.guffaw,m.feeling.smile,m.feeling.noninductive,m.feeling.dissatisfied,m.feeling.impatient]},{name:"5Boxes",list:[m.cell["cell-100"],m.cell["cell-75"],m.cell["cell-50"],m.cell["cell-25"],m.cell["cell-0"]]},{name:"3Stars",list:[m.star.starFull,m.star.starIncomplete,m.star.starEmpty]}]}],n2=V2.reduce((s,r)=>{const{group:n}=r;for(const e of n)s[e.name]=e.list;return s},{});for(const s in n2){const r=n2[s];Object.freeze(r)}const O2="EMPTY_ICON_TYPE",j2={name:"@univerjs/sheets-conditional-formatting",version:"0.17.0"},C0="ssheets-conditional-formatting.config",$2={};var f0=Object.getOwnPropertyDescriptor,D0=(s,r,n,e)=>{for(var t=e>1?void 0:e?f0(r,n):r,i=s.length-1,a;i>=0;i--)(a=s[i])&&(t=a(t)||t);return t},X=(s,r)=>(n,e)=>r(n,e,s);f.ConditionalFormattingService=class extends d.Disposable{constructor(r,n,e,t,i,a){super(),this._conditionalFormattingRuleModel=r,this._injector=n,this._univerInstanceService=e,this._resourceManagerService=t,this._sheetInterceptorService=i,this._commandService=a,this._initCellChange(),this._initSnapshot(),this._initSheetChange()}get _conditionalFormattingViewModelV2(){return this._injector.get(f.ConditionalFormattingViewModel)}composeStyle(r,n,e,t){const i=this._conditionalFormattingViewModelV2.getCellCfs(r,n,e,t);if(i&&(i!=null&&i.length)){const a=i.map(l=>this._conditionalFormattingRuleModel.getRule(r,n,l.cfId)).filter(l=>!!l).reverse(),o=a.findIndex(l=>l==null?void 0:l.stopIfTrue);return o>-1&&a.splice(o+1),a.reduce((l,c)=>{var C;const u=c.rule.type,g=i.find(D=>D.cfId===c.cfId);if(u===S.highlightCell)g.result&&d.merge(l,{style:g.result});else if(u===S.colorScale){const D=g==null?void 0:g.result;D&&typeof D=="string"&&(l.style={...(C=l.style)!=null?C:{},bg:{rgb:D}})}else if(u===S.dataBar){const D=g==null?void 0:g.result;D&&(l.dataBar=D,l.isShowValue=D.isShowValue)}else if(u===S.iconSet){const D=g==null?void 0:g.result;D&&(l.iconSet=D,l.isShowValue=D.isShowValue)}return l},{})}return null}_initSnapshot(){const r=e=>{const t=this._conditionalFormattingRuleModel.getUnitRules(e),i={};return t?(t.forEach((a,o)=>{i[o]=a}),JSON.stringify(i)):""},n=e=>{if(!e)return{};try{return JSON.parse(e)}catch{return{}}};this.disposeWithMe(this._resourceManagerService.registerPluginResource({pluginName:c2,businesses:[d.UniverInstanceType.UNIVER_SHEET],toJson:e=>r(e),parseJson:e=>n(e),onUnLoad:e=>{this._conditionalFormattingRuleModel.deleteUnitId(e),!d.isInternalEditorID(e)&&this._conditionalFormattingViewModelV2.clearCache()},onLoad:(e,t)=>{Object.keys(t).forEach(i=>{[...t[i]].reverse().forEach(o=>{this._conditionalFormattingRuleModel.addRule(e,i,o)})})}}))}_initSheetChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:r=>{if(r.id===F.RemoveSheetCommand.id){const n=r.params,e=F.getSheetCommandTarget(this._univerInstanceService,n);if(!e)return{redos:[],undos:[]};const{unitId:t,subUnitId:i}=e,a=this._conditionalFormattingRuleModel.getSubunitRules(t,i);if(!a)return{redos:[],undos:[]};const o=[],h=[];return a.forEach(l=>{const c={unitId:t,subUnitId:i,cfId:l.cfId};o.push({id:j.id,params:c}),h.push(...z(this._injector,c))}),{redos:o,undos:h}}else if(r.id===F.CopySheetCommand.id){const n=r.params,e=F.getSheetCommandTarget(this._univerInstanceService,n);if(!e)return{redos:[],undos:[]};const{unitId:t,subUnitId:i}=e,{targetSubUnitId:a}=n,o=this._conditionalFormattingRuleModel.getSubunitRules(t,i);if(!o)return{redos:[],undos:[]};const h=[],l=[];return o.forEach(c=>{const u={unitId:t,subUnitId:a,rule:{...c,cfId:this._conditionalFormattingRuleModel.createCfId(t,a)}};h.push({id:H.id,params:u}),l.push(h2(this._injector,u))}),{redos:h,undos:l}}return{redos:[],undos:[]}}}))}_initCellChange(){this.disposeWithMe(this._commandService.onCommandExecuted(r=>{const n=(e,t,i)=>{const a=new Set;return i.forEach(([o,h])=>{const l=this._conditionalFormattingViewModelV2.getCellCfs(e,t,o,h);l==null||l.forEach(c=>a.add(c.cfId))}),[...a].map(o=>this._conditionalFormattingRuleModel.getRule(e,t,o)).filter(o=>!!o)};switch(r.id){case F.SetRangeValuesMutation.id:{const e=r.params,{subUnitId:t,unitId:i,cellValue:a}=e,o=[];new d.ObjectMatrix(a).forValue((l,c,u)=>{u&&Object.keys(u).some(C=>["p","v"].includes(C))&&o.push([l,c])}),n(i,t,o).forEach(l=>{this._conditionalFormattingViewModelV2.markRuleDirty(i,t,l.cfId)});break}case F.InsertColMutation.id:case F.RemoveColMutation.id:{const e=r.params,t=F.getSheetCommandTarget(this._univerInstanceService,e);if(!t)return;const{worksheet:i,unitId:a,subUnitId:o}=t,{range:h}=e,l={...h,endColumn:i.getColumnCount()-1},c=this._conditionalFormattingRuleModel.getSubunitRules(a,o);c&&c.filter(g=>g.ranges.some(C=>d.Rectangle.intersects(C,l))).forEach(g=>{this._conditionalFormattingViewModelV2.markRuleDirty(a,o,g.cfId)});break}case F.RemoveRowMutation.id:case F.InsertRowMutation.id:{const e=r.params,t=F.getSheetCommandTarget(this._univerInstanceService,e);if(!t)return;const{worksheet:i,unitId:a,subUnitId:o}=t,{range:h}=e,l={...h,endRow:i.getRowCount()-1},c=this._conditionalFormattingRuleModel.getSubunitRules(a,o);c&&c.filter(g=>g.ranges.some(C=>d.Rectangle.intersects(C,l))).forEach(g=>{this._conditionalFormattingViewModelV2.markRuleDirty(a,o,g.cfId)});break}case F.MoveRowsMutation.id:{const e=r.params,t=F.getSheetCommandTarget(this._univerInstanceService,e);if(!t)return;const{worksheet:i,unitId:a,subUnitId:o}=t,{sourceRange:h,targetRange:l}=e,c={startRow:Math.min(h.startRow,l.startRow),endRow:i.getRowCount()-1,startColumn:0,endColumn:i.getColumnCount()-1},u=this._conditionalFormattingRuleModel.getSubunitRules(a,o);u&&u.filter(C=>C.ranges.some(D=>d.Rectangle.intersects(D,c))).forEach(C=>{this._conditionalFormattingViewModelV2.markRuleDirty(a,o,C.cfId)});break}case F.MoveColsMutation.id:{const e=r.params,t=F.getSheetCommandTarget(this._univerInstanceService,e);if(!t)return;const{worksheet:i,unitId:a,subUnitId:o}=t,{sourceRange:h,targetRange:l}=e,c={startRow:0,endRow:i.getRowCount()-1,startColumn:Math.min(h.startColumn,l.startColumn),endColumn:i.getColumnCount()-1},u=this._conditionalFormattingRuleModel.getSubunitRules(a,o);u&&u.filter(C=>C.ranges.some(D=>d.Rectangle.intersects(D,c))).forEach(C=>{this._conditionalFormattingViewModelV2.markRuleDirty(a,o,C.cfId)});break}case F.MoveRangeMutation.id:{const{unitId:e,to:t,from:i}=r.params,a=o=>{const h=[];new d.ObjectMatrix(o.value).forValue((c,u)=>{h.push([c,u])}),n(e,o.subUnitId,h).forEach(c=>{this._conditionalFormattingViewModelV2.markRuleDirty(e,o.subUnitId,c.cfId)})};a(t),a(i);break}case F.ReorderRangeMutation.id:{const{range:e,unitId:t,subUnitId:i}=r.params,a=this._conditionalFormattingRuleModel.getSubunitRules(t,i);a&&a.filter(h=>h.ranges.some(l=>d.Rectangle.intersects(l,e))).forEach(h=>{this._conditionalFormattingViewModelV2.markRuleDirty(t,i,h.cfId)});break}}}))}},f.ConditionalFormattingService=D0([X(0,d.Inject(I)),X(1,d.Inject(d.Injector)),X(2,d.Inject(d.IUniverInstanceService)),X(3,d.Inject(d.IResourceManagerService)),X(4,d.Inject(F.SheetInterceptorService)),X(5,d.Inject(d.ICommandService))],f.ConditionalFormattingService);var m0=Object.defineProperty,v0=Object.getOwnPropertyDescriptor,F0=(s,r,n)=>r in s?m0(s,r,{enumerable:!0,configurable:!0,writable:!0,value:n}):s[r]=n,w0=(s,r,n,e)=>{for(var t=e>1?void 0:e?v0(r,n):r,i=s.length-1,a;i>=0;i--)(a=s[i])&&(t=a(t)||t);return t},m2=(s,r)=>(n,e)=>r(n,e,s),o2=(s,r,n)=>F0(s,typeof r!="symbol"?r+"":r,n);f.UniverSheetsConditionalFormattingPlugin=class extends d.Plugin{constructor(r=$2,n,e,t){super(),this._config=r,this._injector=n,this._commandService=e,this._configService=t;const{...i}=d.merge({},$2,this._config);this._configService.setConfig(C0,i),[[f.ConditionalFormattingService],[f.ConditionalFormattingFormulaService],[I],[f.ConditionalFormattingViewModel]].forEach(a=>{this._injector.add(a)}),[y2,_2,M2,R2,S2,I2,H,j,Y,G].forEach(a=>{this._commandService.registerCommand(a)})}onStarting(){this._injector.get(f.ConditionalFormattingService),d.touchDependencies(this._injector,[[f.ConditionalFormattingService],[f.ConditionalFormattingViewModel]])}},o2(f.UniverSheetsConditionalFormattingPlugin,"pluginName",c2),o2(f.UniverSheetsConditionalFormattingPlugin,"packageName",j2.name),o2(f.UniverSheetsConditionalFormattingPlugin,"version",j2.version),o2(f.UniverSheetsConditionalFormattingPlugin,"type",d.UniverInstanceType.UNIVER_SHEET),f.UniverSheetsConditionalFormattingPlugin=w0([d.DependentOn(E.UniverFormulaEnginePlugin),m2(1,d.Inject(d.Injector)),m2(2,d.Inject(d.ICommandService)),m2(3,d.IConfigService)],f.UniverSheetsConditionalFormattingPlugin);const P2="sheet-conditional-rule-icon",E0=35,W2=15,q2=2,p0=s=>{const{startRow:r,endRow:n,startColumn:e,endColumn:t}=s;return`${r}-${n}-${e}-${t}`};class Z2 extends Z.SheetExtension{constructor(){super();w(this,"_paddingRightAndLeft",q2);w(this,"_width",W2);w(this,"_imageMap",new Map);w(this,"uKey",P2);w(this,"Z_INDEX",E0);w(this,"_radius",1);this._init()}draw(n,e,t,i){const{worksheet:a}=t;if(!a)return!1;const o=new Set;n.save(),d.Range.foreach(t.rowColumnSegment,(h,l)=>{if(!a.getRowVisible(h)||!a.getColVisible(l))return;const c=t.getCellWithCoordByIndex(h,l,!1),{isMerged:u,isMergedMainCell:g,mergeInfo:C}=c;let D=a.getCell(h,l);if(u&&(D=a.getCell(C.startRow,C.startColumn)),!(D!=null&&D.iconSet))return;const{iconType:v,iconId:A}=D.iconSet;if(v===O2)return;const _=this._imageMap.get(this._createKey(v,A));if(!_||!this.isRenderDiffRangesByCell(C,i))return;if(u||g){const $=p0(C);if(o.has($))return;o.add($)}const{startX:b,endX:M,startY:L,endY:k}=u||g?C:c,v2=M-b,u2=k-L;if(this._width>u2||this._width>v2+this._paddingRightAndLeft*2)return;const F2=(u2-this._width)/2+L;n.drawImage(_,b+this._paddingRightAndLeft,F2,this._width,this._width)}),n.restore()}_init(){for(const n in n2)n2[n].forEach((t,i)=>{const a=this._createKey(n,String(i)),o=new Image;o.onload=()=>{this._imageMap.set(a,o)},o.src=t})}_createKey(n,e){return`${n}_${e}`}}Z.SpreadsheetExtensionRegistry.add(Z2);function G2(s){if(typeof s!="object"||s===null)return s;const r={};for(const n in s)if(s.hasOwnProperty(n)){const e=G2(s[n]);e!==void 0&&(r[n]=e)}return r}Object.defineProperty(f,"isRangesEqual",{enumerable:!0,get:()=>d.isRangesEqual}),f.AddCfCommand=y2,f.AddConditionalRuleMutation=H,f.AddConditionalRuleMutationUndoFactory=h2,f.CFNumberOperator=p,f.CFRuleType=S,f.CFSubRuleType=y,f.CFTextOperator=T,f.CFTimePeriodOperator=B,f.CFValueType=x,f.CONDITIONAL_FORMATTING_VIEWPORT_CACHE_LENGTH=l2,f.ClearRangeCfCommand=_2,f.ClearWorksheetCfCommand=M2,f.ConditionalFormattingIcon=Z2,f.ConditionalFormattingRuleModel=I,f.DEFAULT_BG_COLOR=Y2,f.DEFAULT_FONT_COLOR=K2,f.DEFAULT_PADDING=q2,f.DEFAULT_WIDTH=W2,f.DataBar=T2,f.DeleteCfCommand=R2,f.DeleteConditionalRuleMutation=j,f.DeleteConditionalRuleMutationUndoFactory=z,f.EMPTY_ICON_TYPE=O2,f.IconUKey=P2,f.MoveCfCommand=S2,f.MoveConditionalRuleMutation=G,f.MoveConditionalRuleMutationUndoFactory=A2,f.SHEET_CONDITIONAL_FORMATTING_PLUGIN=c2,f.SetCfCommand=I2,f.SetConditionalRuleMutation=Y,f.anchorUndoFactory=E2,f.compareWithNumber=K,f.createCfId=p2,f.createDefaultRule=X2,f.createDefaultValue=J2,f.createDefaultValueByValueType=z2,f.dataBarUKey=b2,f.defaultDataBarNativeColor=f2,f.defaultDataBarPositiveColor=C2,f.defaultPlaceholderColor=L2,f.filterRange=t2,f.findIndexByAnchor=O,f.getCacheStyleMatrix=h0,f.getCellValue=N,f.getColorScaleFromValue=N2,f.getMaxInFormulaResult=g0,f.getOppositeOperator=U2,f.getValueByType=e2,f.iconGroup=V2,f.iconMap=n2,f.isAnchorEqual=Q2,f.isFloatsEqual=Q,f.isNullable=R,f.moveByAnchor=w2,f.removeUndefinedAttr=G2,f.serialTimeToTimestamp=k2,f.setConditionalRuleMutationUndoFactory=g2,f.toYMD_1900=B2,f.transformSupportSymmetryAnchor=d2,Object.defineProperty(f,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`@univerjs/core`),require(`@univerjs/sheets`),require(`rxjs`),require(`@univerjs/engine-formula`),require(`rxjs/operators`),require(`@univerjs/engine-render`)):typeof define==`function`&&define.amd?define([`exports`,`@univerjs/core`,`@univerjs/sheets`,`rxjs`,`@univerjs/engine-formula`,`rxjs/operators`,`@univerjs/engine-render`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.UniverSheetsConditionalFormatting={},e.UniverCore,e.UniverSheets,e.rxjs,e.UniverEngineFormula,e.rxjs.operators,e.UniverEngineRender))})(this,function(e,t,n,r,i,a,o){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});let s=`SHEET_CONDITIONAL_FORMATTING_PLUGIN`,c=function(e){return e.beginsWith=`beginsWith`,e.endsWith=`endsWith`,e.containsText=`containsText`,e.notContainsText=`notContainsText`,e.equal=`equal`,e.notEqual=`notEqual`,e.containsBlanks=`containsBlanks`,e.notContainsBlanks=`notContainsBlanks`,e.containsErrors=`containsErrors`,e.notContainsErrors=`notContainsErrors`,e}({}),l=function(e){return e.today=`today`,e.yesterday=`yesterday`,e.tomorrow=`tomorrow`,e.last7Days=`last7Days`,e.thisMonth=`thisMonth`,e.lastMonth=`lastMonth`,e.nextMonth=`nextMonth`,e.thisWeek=`thisWeek`,e.lastWeek=`lastWeek`,e.nextWeek=`nextWeek`,e}({}),u=function(e){return e.greaterThan=`greaterThan`,e.greaterThanOrEqual=`greaterThanOrEqual`,e.lessThan=`lessThan`,e.lessThanOrEqual=`lessThanOrEqual`,e.notBetween=`notBetween`,e.between=`between`,e.equal=`equal`,e.notEqual=`notEqual`,e}({}),d=function(e){return e.highlightCell=`highlightCell`,e.dataBar=`dataBar`,e.colorScale=`colorScale`,e.iconSet=`iconSet`,e}({}),f=function(e){return e.uniqueValues=`uniqueValues`,e.duplicateValues=`duplicateValues`,e.rank=`rank`,e.text=`text`,e.timePeriod=`timePeriod`,e.number=`number`,e.average=`average`,e.formula=`formula`,e}({}),p=function(e){return e.num=`num`,e.min=`min`,e.max=`max`,e.percent=`percent`,e.percentile=`percentile`,e.formula=`formula`,e}({}),m=()=>({cfId:void 0,ranges:[],stopIfTrue:!1,rule:{type:d.highlightCell,subType:f.text,operator:c.containsText}}),h=(e,t)=>{switch(e){case f.text:if([c.beginsWith,c.containsText,c.endsWith,c.equal,c.notContainsText,c.notEqual].includes(t))return``;break;case f.number:return[u.between,u.notBetween].includes(t)?[10,100]:10}return``},g=(e,t)=>{switch(e){case p.formula:return`=`;case p.max:case p.min:return``;case p.percent:case p.percentile:case p.num:return t===void 0?10:t}return``},_=(e,t,n)=>{if(!t)return null;let r=t.findIndex(t=>n(t)===e.id);if(r<0)return null;switch(e.type){case`after`:return r+1;case`before`:return r-1;case`self`:return r}},v=(e,t,n,r)=>{if(!n)return null;let i=_(e,n,r),a=_(t,n,r);if(i===null||a===null||i===a)return;let o=n.splice(i,1)[0];switch(i<a&&(a=_(t,n,r)),t.type){case`before`:n.splice(a+1,0,o);break;case`self`:case`after`:n.splice(a,0,o);break}},y=(e,t,n,r)=>{if(e.type===`after`&&[`after`,`before`].includes(t.type))return[e,t];let i={...e},a={...t};if(i.type!==`after`){let e=_(i,n,r);if(e===null)return null;if(e-1<0){let t=n[e+1];if(t)i.id=r(t),i.type=`before`;else return null}else i.id=r(n[e-1]),i.type=`after`}if(![`after`,`before`].includes(a.type)){let e=_(a,n,r);if(e===null)return null;if(e===0)a.type=`before`;else if(e-1>=0)a.id=r(n[e-1]),a.type=`after`;else if(e+1<=n.length-1)a.id=r(n[e+1]),a.type=`before`;else return null}return i.id===a.id&&i.type===a.type?null:[i,a]},b=(e,t)=>{if([`after`,`before`].includes(t.type)){if(e.type===`after`)return[t,e];if(e.type===`before`)return[t,{...e,type:`self`}]}return null},x=(e,t)=>e.id===t.id&&e.type===t.type,S=()=>`${(0,t.generateRandomId)(8)}`;function C(e){"@babel/helpers - typeof";return C=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},C(e)}function w(e,t){if(C(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(C(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function ee(e){var t=w(e,`string`);return C(t)==`symbol`?t:t+``}function T(e,t,n){return(t=ee(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var E=class{constructor(){T(this,`_model`,new Map),T(this,`_ruleChange$`,new r.Subject),T(this,`$ruleChange`,this._ruleChange$.asObservable())}_ensureList(e,t){let n=this.getSubunitRules(e,t);if(!n){n=[];let r=this._model.get(e);r||(r=new Map,this._model.set(e,r)),r.set(t,n)}return n}getRule(e,t,n){let r=this.getSubunitRules(e,t);return r?r.find(e=>e.cfId===n):null}getUnitRules(e){return this._model.get(e)||null}getSubunitRules(e,t){var n;return((n=this._model.get(e))==null?void 0:n.get(t))||null}getAll(){return this._model}deleteRule(e,t,n){let r=this.getSubunitRules(e,t);if(r){let i=r.findIndex(e=>e.cfId===n),a=r[i];a&&(r.splice(i,1),this._ruleChange$.next({rule:a,subUnitId:t,unitId:e,type:`delete`}))}}setRule(e,n,r,i){let a=this._ensureList(e,n).find(e=>e.cfId===i);if(a){let i=t.Tools.deepClone(a);Object.assign(a,r),this._ruleChange$.next({rule:a,subUnitId:n,unitId:e,type:`set`,oldRule:i})}}addRule(e,t,n){let r=this._ensureList(e,t);r.find(e=>e.cfId===n.cfId)||r.unshift(n),this._ruleChange$.next({rule:n,subUnitId:t,unitId:e,type:`add`})}moveRulePriority(e,t,n,r){let i=this._ensureList(e,t),a=_(n,i,e=>e.cfId),o=_(r,i,e=>e.cfId);if(o===null||a===null||o===a)return;let s=i[a];s&&(v(n,r,i,e=>e.cfId),this._ruleChange$.next({rule:s,subUnitId:t,unitId:e,type:`sort`}))}createCfId(e,t){return S()}deleteUnitId(e){this._model.delete(e)}};let D={type:t.CommandType.MUTATION,id:`sheet.mutation.move-conditional-rule`,handler(e,t){if(!t)return!1;let{unitId:n,subUnitId:r,start:i,end:a}=t;return e.get(E).moveRulePriority(n,r,i,a),!0}},te=e=>{let{unitId:t,subUnitId:n}=e,r=b(e.start,e.end);if(!r)return[];let[i,a]=r;return[{id:D.id,params:{unitId:t,subUnitId:n,start:i,end:a}}]},O=(e,n)=>{let r=e.get(E),{unitId:i,subUnitId:a,cfId:o}=n,s=[...r.getSubunitRules(i,a)||[]],c=s.findIndex(e=>e.cfId===o),l=s[c-1];if(c>-1){let e=s[c],n=[{id:j.id,params:{unitId:i,subUnitId:a,rule:t.Tools.deepClone(e)}}];if(s.splice(c,1),c!==0){let e=s[0];if(e){let t=y({id:e.cfId,type:`before`},{id:l.cfId,type:`after`},s,e=>e.cfId);if(!t)return n;let[r,o]=t,c={unitId:i,subUnitId:a,start:r,end:o};n.push({id:D.id,params:c})}}return n}return[]},k={type:t.CommandType.MUTATION,id:`sheet.mutation.delete-conditional-rule`,handler(e,t){if(!t)return!1;let{unitId:n,subUnitId:r,cfId:i}=t;return e.get(E).deleteRule(n,r,i),!0}},A=(e,t)=>({id:k.id,params:{unitId:t.unitId,subUnitId:t.subUnitId,cfId:t.rule.cfId}}),j={type:t.CommandType.MUTATION,id:`sheet.mutation.add-conditional-rule`,handler(e,t){if(!t)return!1;let{unitId:n,subUnitId:r,rule:i}=t;return e.get(E).addRule(n,r,i),!0}},ne={type:t.CommandType.COMMAND,id:`sheet.command.add-conditional-rule`,handler(e,r){if(!r)return!1;let{rule:i}=r,a=e.get(t.IUndoRedoService),o=e.get(t.ICommandService),s=e.get(E),c=(0,n.getSheetCommandTarget)(e.get(t.IUniverInstanceService),r);if(!c)return!1;let{unitId:l,subUnitId:u}=c,d=s.createCfId(l,u),f={unitId:l,subUnitId:u,rule:{...i,cfId:i.cfId||d}},p=A(e,f),m=o.syncExecuteCommand(j.id,f);return m&&a.pushUndoRedo({unitID:l,redoMutations:[{id:j.id,params:f}],undoMutations:[p]}),m}},M={type:t.CommandType.MUTATION,id:`sheet.mutation.set-conditional-rule`,handler(e,t){if(!t)return!1;let{unitId:n,subUnitId:r,rule:i}=t,a=t.cfId||t.rule.cfId;return e.get(E).setRule(n,r,i,a),!0}},N=(e,n)=>{let r=e.get(E),{unitId:i,subUnitId:a}=n,o=n.cfId||n.rule.cfId,s=r.getRule(i,a,o);return s?[{id:M.id,params:{unitId:i,subUnitId:a,cfId:o,rule:t.Tools.deepClone(s)}}]:[]},re={type:t.CommandType.COMMAND,id:`sheet.command.clear-range-conditional-rule`,handler(e,r){var i;if(!r)return!1;let a=e.get(E),o=e.get(t.IUniverInstanceService),s=e.get(t.ICommandService),c=e.get(t.IUndoRedoService),l=e.get(n.SheetsSelectionsService),u=(0,n.getSheetCommandTarget)(o,r);if(!u)return!1;let{unitId:d,subUnitId:f}=u,p=((i=l.getCurrentSelections())==null?void 0:i.map(e=>e.range))||[],m=a.getSubunitRules(d,f);if(!(m!=null&&m.length)||!p.length)return!1;let h=[],g=[];m.forEach(r=>{let i=new t.ObjectMatrix;r.ranges.forEach(e=>{t.Range.foreach(e,(e,t)=>{i.setValue(e,t,1)})}),p.forEach(e=>{t.Range.foreach(e,(e,t)=>{i.realDeleteValue(e,t)})});let a=(0,n.findAllRectangle)((0,n.createTopMatrixFromMatrix)(i));if(a.length){let t={unitId:d,subUnitId:f,rule:{...r,ranges:a}},n=N(e,t);h.push({id:M.id,params:t}),g.push(...n)}else{let t={unitId:d,subUnitId:f,cfId:r.cfId},n=O(e,t);h.push({id:k.id,params:t}),g.push(...n)}});let _=(0,t.sequenceExecute)(h,s).result;return _&&c.pushUndoRedo({unitID:d,redoMutations:h,undoMutations:g}),_}},ie={type:t.CommandType.COMMAND,id:`sheet.command.clear-worksheet-conditional-rule`,handler(e,r){let i=e.get(E),a=e.get(t.IUniverInstanceService),o=e.get(t.ICommandService),s=e.get(t.IUndoRedoService),c=(0,n.getSheetCommandTarget)(a,r);if(!c)return!1;let{unitId:l,subUnitId:u}=c,d=i.getSubunitRules(l,u);if(!(d!=null&&d.length))return!1;let f=d.map(e=>({cfId:e.cfId,unitId:l,subUnitId:u})),p=f.map(e=>({id:k.id,params:e})),m=f.map(t=>O(e,t)[0]),h=(0,t.sequenceExecute)(p,o).result;return h&&s.pushUndoRedo({unitID:l,redoMutations:p,undoMutations:m}),h}},ae={type:t.CommandType.COMMAND,id:`sheet.command.delete-conditional-rule`,handler(e,r){if(!r)return!1;let i=e.get(t.IUndoRedoService),a=e.get(t.ICommandService),o=(0,n.getSheetCommandTarget)(e.get(t.IUniverInstanceService),r);if(!o)return!1;let{unitId:s,subUnitId:c}=o,l={unitId:s,subUnitId:c,cfId:r.cfId},u=O(e,l),d=a.syncExecuteCommand(k.id,l);return d&&i.pushUndoRedo({unitID:s,undoMutations:u,redoMutations:[{id:k.id,params:l}]}),d}},oe={type:t.CommandType.COMMAND,id:`sheet.command.move-conditional-rule`,handler(e,r){if(!r)return!1;let i=e.get(t.IUndoRedoService),a=e.get(t.ICommandService),o=e.get(t.IUniverInstanceService),s=e.get(E),c=(0,n.getSheetCommandTarget)(o,r);if(!c)return!1;let{unitId:l,subUnitId:u}=c,d=y(r.start,r.end,s.getSubunitRules(l,u)||[],e=>e.cfId);if(!d)return!1;let[f,p]=d,m={unitId:l,subUnitId:u,start:f,end:p},h=te(m),g=a.syncExecuteCommand(D.id,m);return g&&i.pushUndoRedo({unitID:l,redoMutations:[{id:D.id,params:m}],undoMutations:h}),g}},se={type:t.CommandType.COMMAND,id:`sheet.command.set-conditional-rule`,handler(e,r){if(!r)return!1;let i=e.get(t.IUndoRedoService),a=e.get(t.ICommandService),o=(0,n.getSheetCommandTarget)(e.get(t.IUniverInstanceService),r);if(!o)return!1;let{unitId:s,subUnitId:c}=o,l={unitId:s,subUnitId:c,rule:r.rule,cfId:r.cfId},u=N(e,l),d=a.syncExecuteCommand(M.id,l);return d&&i.pushUndoRedo({unitID:s,undoMutations:u,redoMutations:[{id:M.id,params:l}]}),d}};function P(e,t){return function(n,r){t(n,r,e)}}function F(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}let I=class extends t.Disposable{constructor(e,t){super(),this._registerOtherFormulaService=e,this._conditionalFormattingRuleModel=t,T(this,`_formulaMap`,new Map),T(this,`_result$`,new r.Subject),T(this,`result$`,this._result$.asObservable()),this._initFormulaResultChange(),this._initRuleChange()}_initRuleChange(){let e=e=>{switch(e.type){case d.colorScale:return e.config.some(e=>e.value.type===p.formula);case d.dataBar:return[e.config.max,e.config.min].some(e=>e.type===p.formula);case d.iconSet:return e.config.some(e=>e.value.type===p.formula)}};this.disposeWithMe(this._conditionalFormattingRuleModel.$ruleChange.subscribe(t=>{let{unitId:n,subUnitId:r,rule:i,oldRule:a}=t;t.type===`delete`&&this._removeFormulaByCfId(n,r,i.cfId),t.type===`set`&&(e(i.rule)||a&&e(a.rule))&&this._removeFormulaByCfId(n,r,i.cfId),t.type===`add`&&this._registerRuleFormulas(n,r,i)}))}_registerRuleFormulas(e,t,n){switch(n.rule.type){case d.highlightCell:if(n.rule.subType===f.formula){let r=n.rule.value;r&&this.registerFormulaWithRange(e,t,n.cfId,r,n.ranges)}break}}_initFormulaResultChange(){this.disposeWithMe(this._registerOtherFormulaService.formulaResult$.subscribe(e=>{for(let t in e)for(let n in e[t]){let r=e[t][n];for(let e of r){let r=this._ensureSubunitFormulaMap(t,n).getValue(e.formulaId,[`formulaId`]);if(!r)continue;let a=this._getAllFormulaResultByCfId(t,n,r.cfId).every(e=>{let r=this._registerOtherFormulaService.getFormulaValueSync(t,n,e.formulaId);return(r==null?void 0:r.status)===i.FormulaResultStatus.SUCCESS});this._result$.next({...r,isAllFinished:a})}}}))}_ensureSubunitFormulaMap(e,n){let r=this._formulaMap.get(e);r||(r=new Map,this._formulaMap.set(e,r));let i=r.get(n);return i||(i=new t.RefAlias([],[`formulaId`,`id`]),r.set(n,i)),i}getSubUnitFormulaMap(e,t){var n;return(n=this._formulaMap.get(e))==null?void 0:n.get(t)}registerFormulaWithRange(e,t,n,r,a=[{startRow:0,endRow:0,startColumn:0,endColumn:0}]){let o=this._ensureSubunitFormulaMap(e,t),s=this.createCFormulaId(n,r);if(o.getValue(s,[`id`]))return;let c=this._registerOtherFormulaService.registerFormulaWithRange(e,t,r,a,void 0,i.OtherFormulaBizType.CONDITIONAL_FORMATTING,n);o.addValue({formulaText:r,unitId:e,subUnitId:t,cfId:n,id:s,formulaId:c})}_removeFormulaByCfId(e,t,n){let r=this.deleteCache(e,t,n).map(e=>e.formulaId);this._registerOtherFormulaService.deleteFormula(e,t,r)}getFormulaResultWithCoords(e,t,n,r,a=0,o=0){let s=this.getSubUnitFormulaMap(e,t);if(!s)return{status:i.FormulaResultStatus.NOT_REGISTER};let c=s.getValue(this.createCFormulaId(n,r),[`id`]);if(!c)return{status:i.FormulaResultStatus.NOT_REGISTER};let l=this._registerOtherFormulaService.getFormulaValueSync(e,t,c.formulaId);if(!l)return{status:i.FormulaResultStatus.NOT_REGISTER};if(l.status===i.FormulaResultStatus.SUCCESS&&l.result){var u;let e=(u=l.result[a])==null?void 0:u[o];return{result:this._getCellValue(e),status:i.FormulaResultStatus.SUCCESS}}return{status:l.status}}getFormulaMatrix(e,n,r,a){let o=this.getSubUnitFormulaMap(e,n);if(!o)return{status:i.FormulaResultStatus.NOT_REGISTER};let s=o.getValue(this.createCFormulaId(r,a),[`id`]);if(!s)return{status:i.FormulaResultStatus.NOT_REGISTER};let c=this._registerOtherFormulaService.getFormulaValueSync(e,n,s.formulaId);if(!c)return{status:i.FormulaResultStatus.NOT_REGISTER};if(c.status===i.FormulaResultStatus.SUCCESS&&c.result){let e=new t.ObjectMatrix;return new t.ObjectMatrix(c.result).forValue((t,n,r)=>{e.setValue(t,n,this._getCellValue(r))}),{result:e,status:i.FormulaResultStatus.SUCCESS}}return{status:c.status}}_getCellValue(e){if(!e||!e[0]||!e[0][0])return!1;let n=e[0][0];return(n==null?void 0:n.t)===t.CellValueType.BOOLEAN?n.v===t.BooleanNumber.TRUE||n.v===!0:n==null?void 0:n.v}deleteCache(e,t,n,r){let i=this.getSubUnitFormulaMap(e,t);if(!i)return[];if(r){let e=this.createCFormulaId(n,r);return i.deleteValue(e,[`id`]),[]}else{let e=i.getValues().filter(e=>e.cfId===n);return e.forEach(e=>{i.deleteValue(e.formulaId,[`formulaId`])}),e}}_getAllFormulaResultByCfId(e,t,n){let r=this.getSubUnitFormulaMap(e,t);return r?r.getValues().filter(e=>e.cfId===n):[]}createCFormulaId(e,t){return`${e}_${t}`}};I=F([P(0,(0,t.Inject)(i.RegisterOtherFormulaService)),P(1,(0,t.Inject)(E))],I);let L=function(e){return e.preComputingStart=`preComputingStart`,e.preComputing=`preComputing`,e.preComputingEnd=`preComputingEnd`,e.preComputingError=`preComputingError`,e}({});var R=class{constructor(e){this._context=e,T(this,`_cache`,void 0),T(this,`_preComputingStatus$`,new r.BehaviorSubject(L.preComputingStart)),T(this,`preComputingStatus$`,this._preComputingStatus$.asObservable().pipe((0,a.distinctUntilChanged)())),T(this,`_preComputingCache`,void 0),T(this,`_rule`,void 0),this._cache=new t.LRUMap(e.limit),this._rule=e.rule,this._preComputingCache=null,this._initClearCacheListener()}setCacheLength(e){this._cache.limit=e}clearCache(){this._cache.clear()}resetPreComputingCache(){this._preComputingStatus$.next(L.preComputingStart),this._preComputingCache=null}updateRule(e){this._rule=e,this.resetPreComputingCache()}getCell(e,t){let n=this._createKey(e,t);if(this._preComputingStatus$.getValue()===L.preComputing)return this._cache.get(n);let r=this.getPreComputingResult(e,t);if(r===null&&(this._preComputingStatus$.next(L.preComputingStart),this.preComputing(e,t,this._getContext()),r=this.getPreComputingResult(e,t),r===null)||(this._preComputingStatus$.next(L.preComputingEnd),this._cache.has(n)))return this._cache.get(n);let i=this.getCellResult(e,t,r,this._getContext());return i!==null&&this._setCache(e,t,i),i}setPreComputingCache(e){this._preComputingCache=e}getPreComputingResult(e,t){return this._preComputingCache}_createKey(e,t){return`${e}_${t}`}_setCache(e,t,n){let r=this._createKey(e,t);this._cache.set(r,n)}_getContext(){return{...this._context,rule:this._rule}}_initClearCacheListener(){this.preComputingStatus$.subscribe(e=>{e===L.preComputingEnd&&this.clearCache()})}},ce=class extends R{preComputing(e,n,r){let a=r.rule,s=r.worksheet,c=new t.ObjectMatrix;a.rule.config.every(e=>e.value.type===p.num)||Y(a.ranges,s.getMaxRows()-1,s.getMaxColumns()-1).forEach(e=>{t.Range.foreach(e,(e,n)=>{let i=r.getCellValue(e,n),a=i&&i.v;if(!U(a)&&(i==null?void 0:i.t)===t.CellValueType.NUMBER){let t=Number(a);!Number.isNaN(t)&&c.setValue(e,n,t)}})});let l=[...a.rule.config].sort((e,t)=>e.index-t.index).map(e=>({value:K(e.value,c,{...r,cfId:a.cfId}),color:new t.ColorKit(e.color)}));if(!l.some(e=>(0,o.isObject)(e.value)?e.value.status!==i.FormulaResultStatus.SUCCESS:!1)){let e=l.map(e=>e.color).reduce((e,t,n)=>(e.result.push({color:t,value:e.sortValue[n]}),e),{result:[],sortValue:l.map(e=>e.value.result).sort((e,t)=>e-t)}).result;this.setPreComputingCache(e),this._preComputingStatus$.next(L.preComputingEnd);return}this._preComputingStatus$.next(L.preComputing)}getCellResult(e,n,r,i){if(!r)return null;let a=i.getCellValue(e,n);if(a.t===t.CellValueType.NUMBER){let e=Number(a.v);if(!Number.isNaN(e))return J(r,e)}}};let le=`sheet-conditional-rule-data-bar`,ue=`#000`,de=e=>{let{startRow:t,endRow:n,startColumn:r,endColumn:i}=e;return`${t}-${n}-${r}-${i}`};var fe=class extends o.SheetExtension{constructor(...e){super(...e),T(this,`_paddingRightAndLeft`,2),T(this,`_paddingTopAndBottom`,2),T(this,`uKey`,le),T(this,`Z_INDEX`,34),T(this,`_radius`,1)}draw(e,n,r,i){let{worksheet:a}=r;if(!a)return!1;let s=new Set;e.save(),t.Range.foreach(r.rowColumnSegment,(t,n)=>{if(!a.getRowVisible(t)||!a.getColVisible(n))return;let c=r.getCellWithCoordByIndex(t,n,!1),{isMerged:l,isMergedMainCell:u,mergeInfo:d}=c,f=a.getCell(t,n);if(l&&(f=a.getCell(d.startRow,d.startColumn)),!(f!=null&&f.dataBar)||!this.isRenderDiffRangesByCell(d,i))return;if(l||u){let e=de(d);if(s.has(e))return;s.add(e)}let{color:p,value:m,startPoint:h,isGradient:g}=f.dataBar,{startX:_,endX:v,startY:y,endY:b}=l||u?d:c,x=v-_,S=b+o.FIX_ONE_PIXEL_BLUR_OFFSET-y,C=x-this._paddingRightAndLeft*2,w=S-this._paddingTopAndBottom*2;if(m>0){let t=Math.max(C*(1-h/100)*m/100,1),n=_+this._paddingRightAndLeft+h/100*C,r=y+this._paddingTopAndBottom;if(g){let i=e.createLinearGradient(n,r,n+t,r);i.addColorStop(0,p),i.addColorStop(1,`rgb(255 255 255)`),e.fillStyle=i,e.strokeStyle=p,e.lineWidth=1}else e.fillStyle=p;this._drawRectWithRoundedCorner(e,n,r,t,w,!1,!0,!0,!1),g&&e.stroke()}else{let t=Math.max(C*h/100*Math.abs(m)/100,1),n=_+this._paddingRightAndLeft+h/100*C-t,r=y+this._paddingTopAndBottom;if(g){let i=e.createLinearGradient(n,r,n+t,r);i.addColorStop(0,`rgb(255 255 255)`),i.addColorStop(1,p),e.fillStyle=i,e.strokeStyle=p,e.lineWidth=1}else e.fillStyle=p;this._drawRectWithRoundedCorner(e,n,r,t,w,!0,!1,!1,!0),g&&e.stroke()}}),e.restore()}_drawRectWithRoundedCorner(e,t,n,r,i,a,o,s,c){let l=this._radius;!i||!r||(e.beginPath(),e.moveTo(t+l,n),e.lineTo(t+r-l,n),o?e.arcTo(t+r,n,t+r,n+l,l):e.lineTo(t+r,n),e.lineTo(t+r,n+i-l),s?e.arcTo(t+r,n+i,t+r-l,n+i,l):e.lineTo(t+r,n+i),e.lineTo(t+l,n+i),c?e.arcTo(t,n+i,t,n+i-l,l):e.lineTo(t,n+i),e.lineTo(t,n+l),a?e.arcTo(t,n,t+l,n,l):e.lineTo(t,n),e.closePath(),e.fill())}};o.SpreadsheetExtensionRegistry.add(fe);let z=e=>Math.max(Math.min(100,e),0),pe=(e,n,r)=>{let i=r(e,n);if(i&&i.t===t.CellValueType.NUMBER){let e=Number(i.v);return Number.isNaN(e)?null:e}return null};var me=class extends R{preComputing(e,n,r){let a=r.rule,o=a.rule,s=r.worksheet,c=new t.ObjectMatrix;[a.rule.config.max,a.rule.config.min].every(e=>e.type===p.num)||Y(a.ranges,s.getMaxRows()-1,s.getMaxColumns()-1).forEach(e=>{t.Range.foreach(e,(e,n)=>{let i=r.getCellValue(e,n),a=i&&i.v;if(!U(a)&&(i==null?void 0:i.t)===t.CellValueType.NUMBER){let t=Number(a);!Number.isNaN(t)&&c.setValue(e,n,t)}})});let l=K(o.config.min,c,{...r,cfId:a.cfId}),u=K(o.config.max,c,{...r,cfId:a.cfId}),d=0,f=0;if(l.status===i.FormulaResultStatus.SUCCESS){let e=Number(l.result);d=Number.isNaN(e)?0:e}else{this._preComputingStatus$.next(L.preComputing);return}if(u.status===i.FormulaResultStatus.SUCCESS){let e=Number(u.result),t=Number.isNaN(e)?0:e;f=Math.max(t,d),d=Math.min(t,d);let n=50;if(d<0&&f<=0)n=100;else if(d<0&&f>0){let e=Math.abs(f)+Math.abs(d);n=Math.abs(d)/e*100}else d>=0&&f>0&&(n=0);this.setPreComputingCache({min:d,max:f,startPoint:n}),this._preComputingStatus$.next(L.preComputingEnd);return}this._preComputingStatus$.next(L.preComputing)}getCellResult(e,t,n,r){let{min:i,max:a,startPoint:o}=n,s=r.rule.rule,c=s.isShowValue,l=s.config.isGradient,u=pe(e,t,r.getCellValue);if(!(u===null||u<i||i===a||a<i)){if(u===0)return{color:ue,startPoint:o,value:0,isGradient:l,isShowValue:c};if(i<0&&a<=0){let e=a-i,t=z((a-u)/e*100);return t===0?void 0:{color:s.config.nativeColor||`#abd91a`,startPoint:o,value:-t,isGradient:l,isShowValue:c}}else if(i<0&&a>0)if(u>0){let e=z(Math.min(u/a,1)*100);return e===0?void 0:{color:s.config.positiveColor||`#ffbe38`,startPoint:o,value:e,isGradient:l,isShowValue:c}}else{let e=z(Math.min(Math.abs(u)/Math.abs(i),1)*100);return e===0?void 0:{color:s.config.nativeColor||`#abd91a`,startPoint:o,value:-e,isGradient:l,isShowValue:c}}else if(i>=0&&a>0){let e=a-i,t=z((1-(a-u)/e)*100);return t===0?void 0:{color:s.config.positiveColor||`#ffbe38`,startPoint:0,value:t,isGradient:l,isShowValue:c}}}}},he=class extends R{preComputing(e,n,r){let a=r.rule.rule,o=Y(r.rule.ranges,r.worksheet.getMaxRows()-1,r.worksheet.getMaxColumns()-1),s=(()=>{switch(a.subType){case f.average:{let e=0,n=0;return o.forEach(i=>{t.Range.foreach(i,(i,a)=>{let o=r.getCellValue(i,a),s=W(o);o&&o.t===t.CellValueType.NUMBER&&!U(s)&&(e+=Number(s)||0,n++)})}),{value:e/n,type:a.subType}}case f.uniqueValues:case f.duplicateValues:{let e=new Map;return o.forEach(n=>{t.Range.foreach(n,(t,n)=>{let i=W(r.getCellValue(t,n));if(!U(i)){let t=e.get(i);t?e.set(i,t+1):e.set(i,1)}})}),{value:e,type:a.subType}}case f.rank:{let e=[];o.forEach(n=>{t.Range.foreach(n,(n,i)=>{let a=r.getCellValue(n,i),o=W(a);a&&a.t===t.CellValueType.NUMBER&&!U(o)&&e.push(Number(o)||0)})}),e.sort((e,t)=>t-e);let n=r.rule.rule;if(n.isPercent){n.isBottom&&(e=e.toReversed());let r=t.Tools.clamp(n.value,0,100)/100,i=Math.floor(r*e.length),o=t.Tools.clamp(i-1,0,e.length-1);return{value:e[o],type:a.subType}}let i=Math.floor(t.Tools.clamp(n.isBottom?n.value-1:n.value,0,e.length));return n.isBottom?{value:e[e.length-i-1],type:a.subType}:{value:e[Math.max(i-1,0)],type:a.subType}}case f.formula:{let e=a,t=r.accessor.get(I);t.registerFormulaWithRange(r.unitId,r.subUnitId,r.rule.cfId,e.value,r.rule.ranges);let n=t.getFormulaMatrix(r.unitId,r.subUnitId,r.rule.cfId,e.value);return n&&n.status===i.FormulaResultStatus.SUCCESS?(this._preComputingStatus$.next(L.preComputingEnd),{value:n.result,type:a.subType}):(this._preComputingStatus$.next(L.preComputing),null)}case f.timePeriod:switch(a.operator){case l.last7Days:return{value:{start:(0,t.dayjs)().subtract(7,`day`).valueOf(),end:(0,t.dayjs)().valueOf()},type:a.subType};case l.lastMonth:return{value:{start:(0,t.dayjs)().startOf(`month`).subtract(1,`month`).valueOf(),end:(0,t.dayjs)().endOf(`month`).subtract(1,`month`).valueOf()},type:a.subType};case l.lastWeek:return{value:{start:(0,t.dayjs)().startOf(`week`).subtract(1,`week`).valueOf(),end:(0,t.dayjs)().endOf(`week`).subtract(1,`week`).valueOf()},type:a.subType};case l.nextMonth:return{value:{start:(0,t.dayjs)().startOf(`month`).add(1,`month`).valueOf(),end:(0,t.dayjs)().endOf(`month`).add(1,`month`).valueOf()},type:a.subType};case l.nextWeek:return{value:{start:(0,t.dayjs)().startOf(`week`).add(1,`week`).valueOf(),end:(0,t.dayjs)().endOf(`week`).add(1,`week`).valueOf()},type:a.subType};case l.thisMonth:return{value:{start:(0,t.dayjs)().startOf(`month`).valueOf(),end:(0,t.dayjs)().endOf(`month`).valueOf()},type:a.subType};case l.thisWeek:return{value:{start:(0,t.dayjs)().startOf(`week`).valueOf(),end:(0,t.dayjs)().endOf(`week`).valueOf()},type:a.subType};case l.today:return{value:{start:(0,t.dayjs)().startOf(`day`).valueOf(),end:(0,t.dayjs)().endOf(`day`).valueOf()},type:a.subType};case l.tomorrow:return{value:{start:(0,t.dayjs)().startOf(`day`).add(1,`day`).valueOf(),end:(0,t.dayjs)().endOf(`day`).add(1,`day`).valueOf()},type:a.subType};case l.yesterday:return{value:{start:(0,t.dayjs)().startOf(`day`).subtract(1,`day`).valueOf(),end:(0,t.dayjs)().endOf(`day`).subtract(1,`day`).valueOf()},type:a.subType}}}})();this.setPreComputingCache(s)}getCellResult(e,n,r,a){let o=a.getCellValue(e,n),s=a.rule.rule;return(()=>{switch(s.subType){case f.number:{let e=o&&Number(o.v),n=(o==null?void 0:o.t)===t.CellValueType.NUMBER,r=s;return n?U(e)||Number.isNaN(e)?void 0:q({operator:r.operator,value:r.value||0},e||0):!![u.notEqual,u.notBetween].includes(r.operator)}case f.text:{let e=s,t=W(o),n=U(t)?``:String(t),r=e.value||``;switch(e.operator){case c.beginsWith:return n.startsWith(r);case c.containsBlanks:return/^\s*$/.test(n);case c.notContainsBlanks:return!/^\s*$/.test(n);case c.containsErrors:return i.ERROR_TYPE_SET.has(n);case c.notContainsErrors:return!i.ERROR_TYPE_SET.has(n);case c.containsText:return n.indexOf(r)>-1;case c.notContainsText:return n.indexOf(r)===-1;case c.endsWith:return n.endsWith(r);case c.equal:return n===r;case c.notEqual:return n!==r;default:return!1}}case f.timePeriod:{let e=W(o);if(U(e)||Number.isNaN(Number(e))||(o==null?void 0:o.t)!==t.CellValueType.NUMBER||!r)return;let n=ye(Number(e)),{start:i,end:a}=r.value;return n>=i&&n<=a}case f.average:{let e=o&&o.v,n=Number(e),i=(o==null?void 0:o.t)===t.CellValueType.NUMBER,a=s;if(!i)return u.notEqual===a.operator;if(U(e)||Number.isNaN(n)||!r)return!1;let c=r.value;switch(a.operator){case u.greaterThan:return n>c;case u.greaterThanOrEqual:return n>=c;case u.lessThan:return n<c;case u.lessThanOrEqual:return n<=c;case u.equal:return H(n,c);case u.notEqual:return!H(n,c);default:return!1}}case f.rank:{let e=W(o),n=Number(e);if(U(e)||Number.isNaN(n)||(o==null?void 0:o.t)!==t.CellValueType.NUMBER||!r)return!1;let i=r.value;return s.isBottom?n<=i:n>=i}case f.uniqueValues:{let e=W(o);return U(e)||!r?!1:r.value.get(e)===1}case f.duplicateValues:{let e=W(o);if(U(e)||!r)return!1;let t=r.value.get(e);return t&&t!==1}case f.formula:{let t=r==null?void 0:r.value;if(t){let r=a.rule.ranges[0],i=e-r.startRow,o=n-r.startColumn;return t.getValue(i,o)===!0}return!1}}})()?s.style:{}}};let ge=(e,n,r)=>{let i=r(e,n);if(i&&i.t===t.CellValueType.NUMBER){let e=Number(i.v);return Number.isNaN(e)?null:e}return null};var _e=class extends R{preComputing(e,n,r){let a=r.rule.rule,o=r.worksheet,s=new t.ObjectMatrix;a.config.every(e=>e.value.type===p.num)||Y(r.rule.ranges,o.getMaxRows()-1,o.getMaxColumns()-1).forEach(e=>{t.Range.foreach(e,(e,n)=>{let i=r.getCellValue(e,n),a=i&&i.v;if(!U(a)&&(i==null?void 0:i.t)===t.CellValueType.NUMBER){let t=Number(a);!Number.isNaN(t)&&s.setValue(e,n,t)}})});let c=a.config.map(e=>K(e.value,s,{...r,cfId:r.rule.cfId}));if(!c.some(e=>e.status!==i.FormulaResultStatus.SUCCESS)){let e=c.map((e,t)=>({operator:a.config[t].operator,value:Number(e.result)||0})).reduce((e,t,n,r)=>{let i=a.config[n];if(!n||n===r.length-1)e.push({...t,iconId:i.iconId,iconType:i.iconType});else{let a=r[n-1];q(a,t.value)||e.push({...t,iconId:i.iconId,iconType:i.iconType})}return e},[]);this.setPreComputingCache(e),this._preComputingStatus$.next(L.preComputingEnd);return}this._preComputingStatus$.next(L.preComputing)}getCellResult(e,t,n,r){if(!n)return null;let i=ge(e,t,r.getCellValue);if(i===null)return;let a=r.rule.rule,o=a.isShowValue===void 0?!0:!!a.isShowValue;for(let e=0;e<n.length;e++){let t=n[e],r={...t},a={...t},{iconId:s,iconType:c}=t;if(e===0){if(q(t,i))return{iconId:s,iconType:c,isShowValue:o}}else if(e===n.length-1)return{iconId:s,iconType:c,isShowValue:o};else{let t=n[e-1];if(a.operator=xe(t.operator),a.value=t.value,q(r,i)&&q(a,i))return{iconId:s,iconType:c,isShowValue:o}}}}};let B=1e3*3*3,V=class extends t.Disposable{constructor(e,n,i,o){super(),this._injector=e,this._conditionalFormattingRuleModel=n,this._conditionalFormattingFormulaService=i,this._univerInstanceService=o,T(this,`_calculateUnitManagers`,new Map),T(this,`_rTreeManager`,new t.RTree),T(this,`_cellCache`,new t.LRUMap(B)),T(this,`_markDirty$`,new r.Subject),T(this,`markDirty$`,this._markDirty$.asObservable()),T(this,`_markRuleDirtyAtOnce`,(e,t,n,r=!0)=>{if(this._cellCache.clear(),r){let r=this._ensureCalculateUnitManager(e,t).get(n);r&&r.resetPreComputingCache()}this._markDirty$.next({unitId:e,subUnitId:t,cfId:n})}),T(this,`markRuleDirty`,(()=>{let e=new r.Subject;return this.disposeWithMe(e.pipe((0,a.bufferTime)(100),(0,a.filter)(e=>!!e.length),(0,a.map)(e=>{let t=new Set,n=[];return e.forEach(e=>{let r=`${e.unitId}_${e.subUnitId}_${e.cfId}`;if(t.has(r)){if(e.isNeedResetPreComputingCache){let t=n.find(t=>t.cfId===e.cfId);t.isNeedResetPreComputingCache=!0}return}t.add(r),n.push({...e})}),n})).subscribe(e=>{e.forEach(e=>{this._markRuleDirtyAtOnce(e.unitId,e.subUnitId,e.cfId,e.isNeedResetPreComputingCache)})})),(t,n,r,i=!0)=>{e.next({unitId:t,subUnitId:n,cfId:r,isNeedResetPreComputingCache:i})}})()),this._initRuleListener(),this._handleCustomFormulasSeparately(),this._initCFFormulaListener()}_initCFFormulaListener(){this.disposeWithMe(this._conditionalFormattingFormulaService.result$.subscribe(({unitId:e,subUnitId:t,cfId:n,isAllFinished:r})=>{r&&this._markRuleDirtyAtOnce(e,t,n,r)}))}getCellCfs(e,t,n,r){let i=this._createCacheKey(e,t,n,r);if(this._cellCache.has(i))return this._cellCache.get(i);let a=this._getCellCfs(e,t,n,r);return a.length&&this._cellCache.set(i,a),a}_getCellCfs(e,t,n,r){var i;let a=(i=this._conditionalFormattingRuleModel.getSubunitRules(e,t))==null?[]:i,o=this._ensureCalculateUnitManager(e,t),s=this._rTreeManager.bulkSearch([{unitId:e,sheetId:t,range:{startColumn:r,endColumn:r,startRow:n,endRow:n}}]),c=a.filter(e=>s.has(e.cfId));return c.length?c.map(e=>{let t=o.get(e.cfId);return t?{cfId:e.cfId,result:t.getCell(n,r)}:null}).filter(e=>!!e).map((e,t)=>({...e,priority:t})):[]}dispose(){this.clearCache(),super.dispose()}clearCache(){this._calculateUnitManagers.clear(),this._cellCache.clear(),this._rTreeManager.clear()}_handleCustomFormulasSeparately(){this.disposeWithMe(this._conditionalFormattingRuleModel.$ruleChange.subscribe(e=>{if(e.type===`set`){let{unitId:t,subUnitId:n}=e,r=e.oldRule;r.rule.type===d.highlightCell&&r.rule.subType===f.formula&&this._conditionalFormattingFormulaService.deleteCache(t,n,r.cfId)}}))}_initRuleListener(){this.disposeWithMe(this._conditionalFormattingRuleModel.$ruleChange.subscribe(e=>{let{unitId:t,subUnitId:n,rule:r}=e,{cfId:i,ranges:a}=r,o=this._ensureCalculateUnitManager(t,n);switch(this.markRuleDirty(t,n,i),e.type){case`add`:{this._rTreeManager.bulkInsert(a.map(e=>({unitId:t,sheetId:n,id:i,range:e})));let e=this._createRuleCalculateUnitInstance(t,n,r);if(!e)return;o.set(r.cfId,e);break}case`delete`:this._rTreeManager.bulkRemove(a.map(e=>({unitId:t,sheetId:n,id:i,range:e}))),o.delete(r.cfId);break;case`set`:{let s=e.oldRule;if(this._rTreeManager.bulkRemove(s.ranges.map(e=>({unitId:t,sheetId:n,id:s.cfId,range:e}))),this._rTreeManager.bulkInsert(a.map(e=>({unitId:t,sheetId:n,id:i,range:e}))),s.rule.type!==r.rule.type){let e=this._createRuleCalculateUnitInstance(t,n,r);if(!e)return;o.delete(s.cfId),o.set(r.cfId,e)}else{let e=o.get(s.cfId);if(!e)return;e.updateRule(r)}}}}))}_ensureCalculateUnitManager(e,t){let n=this._calculateUnitManagers.get(e);n||(n=new Map,this._calculateUnitManagers.set(e,n));let r=n.get(t);return r||(r=new Map,n.set(t,r)),r}_createRuleCalculateUnitInstance(e,t,n){let r=this._univerInstanceService.getUnit(e),i=r==null?void 0:r.getSheetBySheetId(t);if(!r||!i)return;let a={workbook:r,worksheet:i,unitId:e,subUnitId:t,accessor:this._injector,rule:n,limit:B,getCellValue:(e,t)=>i.getCellRaw(e,t)||{}};switch(n.rule.type){case d.colorScale:return new ce(a);case d.dataBar:return new me(a);case d.highlightCell:return new he(a);case d.iconSet:return new _e(a)}}_createCacheKey(e,t,n,r){return`${e}_${t}_${n}_${r}`}setCacheLength(e=B){this._cellCache.limit!==e&&(this._cellCache.limit=e,this._calculateUnitManagers.forEach(t=>{t.forEach(t=>{t.forEach(t=>{t.setCacheLength(e)})})}))}};V=F([P(0,(0,t.Inject)(t.Injector)),P(1,(0,t.Inject)(E)),P(2,(0,t.Inject)(I)),P(3,t.IUniverInstanceService)],V);function H(e,t){return Math.abs(e-t)<2**-52}let U=e=>e==null||typeof e==`string`&&e.trim()===``,W=e=>{var n;if(!e)return null;if(e.t===t.CellValueType.BOOLEAN)return e.v===t.BooleanNumber.TRUE?i.BooleanValue.TRUE:i.BooleanValue.FALSE;let r=e.v,a=(n=e.p)==null||(n=n.body)==null?void 0:n.dataStream.replace(/\r\n$/,``);return U(r)?U(a)?null:a:r},G=86400;function ve(e,t=!0){if(t&&e>=0){if(e===0)return[1900,1,0];if(e===60)return[1900,2,29];if(e<60)return[1900,e<32?1:2,(e-1)%31+1]}let n=e+68569+2415019,r=Math.floor(4*n/146097);n-=Math.floor((146097*r+3)/4);let i=Math.floor(4e3*(n+1)/1461001);n=n-Math.floor(1461*i/4)+31;let a=Math.floor(80*n/2447),o=n-Math.floor(2447*a/80);n=Math.floor(a/11);let s=a+2-12*n;return[100*(r-49)+i+n|0,s|0,o|0]}let ye=e=>{let n=e|0,r=G*(e-n),i=Math.floor(r);r-i>.9999&&(i+=1,i===G&&(i=0,n+=1));let a=i<0?G+i:i,[o,s,c]=ve(e,!0);return(0,t.dayjs)(`${o}/${s}/${c} ${Math.floor(a/60/60)%60}:${Math.floor(a/60)%60}:${Math.floor(a)%60}`).valueOf()},K=(e,t,n)=>{switch(e.type){case p.max:{let e=0;return t.forValue((t,n,r)=>{r>e&&(e=r)}),{status:i.FormulaResultStatus.SUCCESS,result:e}}case p.min:{let e;return t.forValue((t,n,r)=>{e===void 0&&(e=r),r<e&&(e=r)}),{status:i.FormulaResultStatus.SUCCESS,result:e}}case p.percent:{let n,r;t.forValue((e,t,i)=>{(n===void 0||r===void 0)&&(n=i,r=i),i>n&&(n=i),i<r&&(r=i)});let a=(n||0)-(r||0),o=Math.max(Math.min(Number(e.value)||0,100),0);return{status:i.FormulaResultStatus.SUCCESS,result:o/100*a+(r||0)}}case p.percentile:{let n=t.toNativeArray().sort((e,t)=>e-t),r=Math.max(Math.min(Number(e.value)||0,100),0),a=(n.length-1)*r/100,o=Math.floor(a),s=a-o,c=n[o]+(n[Math.min(o+1,n.length-1)]-n[o])*s;return{status:i.FormulaResultStatus.SUCCESS,result:c}}case p.formula:{let{accessor:t,unitId:r,subUnitId:i,cfId:a}=n,o=String(e.value),s=t.get(I);return s.registerFormulaWithRange(r,i,a,o),s.getFormulaResultWithCoords(r,i,a,o)}case p.num:default:{let t=Number(e.value);return{status:i.FormulaResultStatus.SUCCESS,result:Number.isNaN(t)?0:t}}}},be=(e,n,r,i)=>{let{accessor:a}=i,o=a.get(V),s=new t.ObjectMatrix;return r.ranges.forEach(i=>{t.Range.foreach(i,(t,i)=>{let a=o.getCellCfs(e,n,t,i);if(a){let e=a.find(e=>e.cfId===r.cfId);e!=null&&e.result&&s.setValue(t,i,e.result)}})}),s},q=(e,t)=>{switch(e.operator){case u.between:{if(typeof e.value!=`object`||!e.value.length)return;let n=Math.min(...e.value),r=Math.max(...e.value);return t>=n&&t<=r}case u.notBetween:{if(typeof e.value!=`object`||!e.value.length)return;let n=Math.min(...e.value),r=Math.max(...e.value);return!(t>=n&&t<=r)}case u.equal:return H(e.value||0,t);case u.notEqual:return!H(e.value||0,t);case u.greaterThan:return t>(e.value||0);case u.greaterThanOrEqual:return t>=(e.value||0);case u.lessThan:return t<(e.value||0);case u.lessThanOrEqual:return t<=(e.value||0);default:return!1}},xe=e=>{switch(e){case u.greaterThan:return u.lessThanOrEqual;case u.greaterThanOrEqual:return u.lessThan;case u.lessThan:return u.greaterThanOrEqual;case u.lessThanOrEqual:return u.greaterThan}return e},J=(e,n)=>{let r=e=>e.a===void 0?{...e,a:1}:e,i=e.findIndex(e=>e.value>=n),a=i-1;if(i===0)return e[0].color.toRgbString();if(a>=0){let o=e[a],s=e[i];if(o.color.isValid&&s.color.isValid){let e=r(o.color.toRgb()),i=r(s.color.toRgb()),a=s.value-o.value,c=(n-o.value)/a;return new t.ColorKit([`r`,`g`,`b`,`a`].reduce((t,n)=>{let r=e[n];return t[n]=(i[n]-r)*c+r,t},{})).toRgbString()}}else return e[e.length-1].color.toRgbString()},Y=(e,t,n)=>e.map(e=>{if(e.startColumn>n||e.startRow>t)return null;let r={...e};return r.endRow=Math.min(r.endRow,t),r.endColumn=Math.min(r.endColumn,n),r}).filter(e=>!!e);function Se(e){let n=0;return new t.ObjectMatrix(e).forValue((e,t,r)=>{n=Math.max(Number.isNaN(n)?0:n,Number(r))}),n}let X={feedback:{mistake:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%229.99999%22%20cy%3D%2210%22%20r%3D%227.03704%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6.87359%206.87332C6.6146%207.13231%206.6146%207.55221%206.87359%207.8112L9.062%209.99961L6.87356%2012.188C6.61457%2012.447%206.61457%2012.8669%206.87356%2013.1259C7.13255%2013.3849%207.55245%2013.3849%207.81144%2013.1259L9.99987%2010.9375L12.1882%2013.1258C12.4472%2013.3848%2012.8671%2013.3848%2013.1261%2013.1258C13.3851%2012.8669%2013.3851%2012.447%2013.1261%2012.188L10.9378%209.99961L13.1261%207.81127C13.3851%207.55228%2013.3851%207.13238%2013.1261%206.87339C12.8671%206.61441%2012.4472%206.61441%2012.1882%206.87339L9.99987%209.06173L7.81147%206.87332C7.55248%206.61433%207.13257%206.61433%206.87359%206.87332Z%22%20fill%3D%22%23FFFFFF%22%2F%3E%0A%3C%2Fsvg%3E%0A`,warn:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%229.99999%22%20cy%3D%2210%22%20r%3D%227.03704%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3Cpath%20d%3D%22M9.16817%206.67735C9.16646%206.61745%209.1656%206.5875%209.16653%206.56236C9.18103%206.16817%209.49136%205.84883%209.88497%205.82306C9.91008%205.82141%209.94004%205.82141%209.99996%205.82141V5.82141C10.0599%205.82141%2010.0899%205.82141%2010.115%205.82306C10.5086%205.84883%2010.8189%206.16817%2010.8334%206.56236C10.8343%206.5875%2010.8335%206.61745%2010.8318%206.67735L10.7043%2011.131C10.6934%2011.5121%2010.3812%2011.8154%209.99995%2011.8154V11.8154C9.61866%2011.8154%209.30655%2011.5121%209.29564%2011.131L9.16817%206.67735Z%22%20fill%3D%22%23FFFFFF%22%2F%3E%0A%3Crect%20x%3D%229.31488%22%20y%3D%2212.8086%22%20width%3D%221.37006%22%20height%3D%221.37006%22%20rx%3D%220.685032%22%20fill%3D%22%23FFFFFF%22%2F%3E%0A%3C%2Fsvg%3E%0A`,correct:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M17.037%2010C17.037%2013.8865%2013.8864%2017.0371%209.99999%2017.0371C6.11354%2017.0371%202.96295%2013.8865%202.96295%2010C2.96295%206.1136%206.11354%202.96301%209.99999%202.96301C13.8864%202.96301%2017.037%206.1136%2017.037%2010Z%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3Cpath%20d%3D%22M13.9239%207.17477C13.6638%206.91472%2013.2422%206.91472%2012.9821%207.17477L8.74433%2011.4126L7.01786%209.6861C6.75781%209.42606%206.33619%209.42606%206.07614%209.6861C5.81609%209.94615%205.81609%2010.3678%206.07614%2010.6278L8.27349%2012.8252C8.53354%2013.0852%208.95516%2013.0852%209.21521%2012.8252L9.2195%2012.8209L13.9239%208.1165C14.1839%207.85645%2014.1839%207.43482%2013.9239%207.17477Z%22%20fill%3D%22%23FFFFFF%22%2F%3E%0A%3C%2Fsvg%3E%0A`},star:{starEmpty:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10.3437%203.3312L11.6861%206.67412C11.8451%207.0699%2012.2165%207.33978%2012.6421%207.36863L16.2362%207.61233C16.5693%207.63492%2016.7048%208.05202%2016.4486%208.26608L13.6841%2010.5758C13.3568%2010.8493%2013.215%2011.2859%2013.319%2011.6996L14.1979%2015.1931C14.2793%2015.5168%2013.9245%2015.7746%2013.6418%2015.5971L10.5908%2013.6817C10.2296%2013.4549%209.77045%2013.4549%209.40924%2013.6817L6.35828%2015.5971C6.07553%2015.7746%205.72072%2015.5168%205.80217%2015.1931L6.68105%2011.6996C6.7851%2011.2859%206.64322%2010.8493%206.31592%2010.5758L3.55145%208.26607C3.29525%208.05202%203.43078%207.63492%203.76386%207.61233L7.358%207.36863C7.78352%207.33978%208.15498%207.0699%208.31391%206.67412L9.65633%203.3312C9.78074%203.0214%2010.2193%203.0214%2010.3437%203.3312Z%22%20fill%3D%22%23fff%22%20stroke%3D%22%23FFBD37%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3C%2Fsvg%3E%0A`,starIncomplete:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10.3437%203.3312L11.6861%206.67412C11.845%207.0699%2012.2165%207.33978%2012.642%207.36863L16.2361%207.61233C16.5692%207.63492%2016.7047%208.05202%2016.4485%208.26608L13.6841%2010.5758C13.3568%2010.8493%2013.2149%2011.2859%2013.3189%2011.6996L14.1978%2015.1931C14.2793%2015.5168%2013.9245%2015.7746%2013.6417%2015.5971L10.5908%2013.6817C10.2295%2013.4549%209.77039%2013.4549%209.40918%2013.6817L6.35822%2015.5971C6.07547%2015.7746%205.72066%2015.5168%205.80211%2015.1931L6.68098%2011.6996C6.78504%2011.2859%206.64316%2010.8493%206.31586%2010.5758L3.55139%208.26607C3.29519%208.05202%203.43072%207.63492%203.7638%207.61233L7.35793%207.36863C7.78346%207.33978%208.15491%207.0699%208.31385%206.67412L9.65627%203.3312C9.78068%203.0214%2010.2192%203.0214%2010.3437%203.3312Z%22%20fill%3D%22%23fff%22%20stroke%3D%22%23FFBD37%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3Cmask%20id%3D%22mask1_613_177%22%20style%3D%22mask-type%3Aalpha%22%20maskUnits%3D%22userSpaceOnUse%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2210%22%20height%3D%2220%22%3E%0A%3Crect%20width%3D%2210%22%20height%3D%2220%22%20fill%3D%22%23C4C4C4%22%2F%3E%0A%3C%2Fmask%3E%0A%3Cg%20mask%3D%22url(%23mask1_613_177)%22%3E%0A%3Cpath%20d%3D%22M10.3437%203.3312L11.6861%206.67412C11.845%207.0699%2012.2165%207.33978%2012.642%207.36863L16.2361%207.61233C16.5692%207.63492%2016.7047%208.05202%2016.4485%208.26608L13.6841%2010.5758C13.3568%2010.8493%2013.2149%2011.2859%2013.3189%2011.6996L14.1978%2015.1931C14.2793%2015.5168%2013.9245%2015.7746%2013.6417%2015.5971L10.5908%2013.6817C10.2295%2013.4549%209.77039%2013.4549%209.40918%2013.6817L6.35822%2015.5971C6.07547%2015.7746%205.72066%2015.5168%205.80211%2015.1931L6.68098%2011.6996C6.78504%2011.2859%206.64316%2010.8493%206.31586%2010.5758L3.55139%208.26607C3.29519%208.05202%203.43072%207.63492%203.7638%207.61233L7.35793%207.36863C7.78346%207.33978%208.15491%207.0699%208.31385%206.67412L9.65627%203.3312C9.78068%203.0214%2010.2192%203.0214%2010.3437%203.3312Z%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%23FFBD37%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3C%2Fg%3E%0A%3C%2Fsvg%3E%0A`,starFull:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10.3437%203.3312L11.6861%206.67412C11.8451%207.0699%2012.2165%207.33978%2012.6421%207.36863L16.2362%207.61233C16.5693%207.63492%2016.7048%208.05202%2016.4486%208.26608L13.6841%2010.5758C13.3568%2010.8493%2013.215%2011.2859%2013.319%2011.6996L14.1979%2015.1931C14.2793%2015.5168%2013.9245%2015.7746%2013.6418%2015.5971L10.5908%2013.6817C10.2296%2013.4549%209.77045%2013.4549%209.40924%2013.6817L6.35828%2015.5971C6.07553%2015.7746%205.72072%2015.5168%205.80217%2015.1931L6.68105%2011.6996C6.7851%2011.2859%206.64322%2010.8493%206.31592%2010.5758L3.55145%208.26607C3.29525%208.05202%203.43078%207.63492%203.76386%207.61233L7.358%207.36863C7.78352%207.33978%208.15498%207.0699%208.31391%206.67412L9.65633%203.3312C9.78074%203.0214%2010.2193%203.0214%2010.3437%203.3312Z%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%23FFBD37%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3C%2Fsvg%3E%0A`},progress:{progress0:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%229.99993%22%20r%3D%226.66667%22%20stroke%3D%22%237A7A7A%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3C%2Fsvg%3E%0A`,progress25:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%229.99993%22%20r%3D%226.66667%22%20stroke%3D%22%237A7A7A%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3Cpath%20d%3D%22M16.2963%209.99991C16.2963%209.17307%2016.1335%208.35432%2015.8171%207.59042C15.5006%206.82652%2015.0369%206.13242%2014.4522%205.54776C13.8675%204.96309%2013.1734%204.49931%2012.4095%204.18289C11.6456%203.86647%2010.8269%203.70361%2010%203.70361L10%209.99991H16.2963Z%22%20fill%3D%22%237A7A7A%22%2F%3E%0A%3C%2Fsvg%3E%0A`,progress50:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%229.99993%22%20r%3D%226.66667%22%20stroke%3D%22%237A7A7A%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3Cpath%20d%3D%22M10%2016.2962C11.6699%2016.2962%2013.2714%2015.6328%2014.4522%2014.4521C15.633%2013.2713%2016.2963%2011.6698%2016.2963%209.99991C16.2963%208.33003%2015.633%206.72854%2014.4522%205.54776C13.2714%204.36697%2011.6699%203.70361%2010%203.70361L10%209.99991L10%2016.2962Z%22%20fill%3D%22%237A7A7A%22%2F%3E%0A%3C%2Fsvg%3E%0A`,progress75:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%229.99993%22%20r%3D%226.66667%22%20stroke%3D%22%237A7A7A%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3Cpath%20d%3D%22M3.70374%209.99991C3.70374%2011.2452%204.07301%2012.4625%204.76485%2013.4979C5.4567%2014.5334%206.44005%2015.3404%207.59054%2015.8169C8.74104%2016.2935%2010.007%2016.4182%2011.2284%2016.1752C12.4497%2015.9323%2013.5716%2015.3326%2014.4522%2014.4521C15.3327%2013.5715%2015.9324%2012.4496%2016.1753%2011.2283C16.4183%2010.0069%2016.2936%208.74092%2015.8171%207.59042C15.3405%206.43992%2014.5335%205.45658%2013.4981%204.76473C12.4626%204.07288%2011.2453%203.70361%2010%203.70361L10%209.99991L3.70374%209.99991Z%22%20fill%3D%22%237A7A7A%22%2F%3E%0A%3C%2Fsvg%3E%0A`,progress100:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%229.99993%22%20r%3D%226.66667%22%20stroke%3D%22%237A7A7A%22%20stroke-width%3D%220.740741%22%2F%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%229.99991%22%20r%3D%226.2963%22%20fill%3D%22%237A7A7A%22%2F%3E%0A%3C%2Fsvg%3E%0A`},signal:{signal0:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%2214.4764%22%20y%3D%222.98926%22%20width%3D%222.3%22%20height%3D%2214.0597%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2210.7255%22%20y%3D%225.93921%22%20width%3D%222.3%22%20height%3D%2211.1096%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%226.97455%22%20y%3D%229.70435%22%20width%3D%222.3%22%20height%3D%227.3443%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%223.22363%22%20y%3D%2213.3302%22%20width%3D%222.3%22%20height%3D%223.71851%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3C%2Fsvg%3E%0A`,signal25:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%2214.4764%22%20y%3D%222.98926%22%20width%3D%222.3%22%20height%3D%2214.0597%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2210.7255%22%20y%3D%225.93921%22%20width%3D%222.3%22%20height%3D%2211.1096%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%226.97455%22%20y%3D%229.70435%22%20width%3D%222.3%22%20height%3D%227.3443%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%223.22363%22%20y%3D%2213.3302%22%20width%3D%222.3%22%20height%3D%223.71851%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3C%2Fsvg%3E%0A`,signal50:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%2214.4764%22%20y%3D%222.98926%22%20width%3D%222.3%22%20height%3D%2214.0597%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2210.7255%22%20y%3D%225.93921%22%20width%3D%222.3%22%20height%3D%2211.1096%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%226.97455%22%20y%3D%229.70435%22%20width%3D%222.3%22%20height%3D%227.3443%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3Crect%20x%3D%223.22363%22%20y%3D%2213.3302%22%20width%3D%222.3%22%20height%3D%223.71851%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3C%2Fsvg%3E%0A`,signal75:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%2214.4764%22%20y%3D%222.98926%22%20width%3D%222.3%22%20height%3D%2214.0597%22%20rx%3D%220.5%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2210.7255%22%20y%3D%225.93921%22%20width%3D%222.3%22%20height%3D%2211.1096%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3Crect%20x%3D%226.97455%22%20y%3D%229.70435%22%20width%3D%222.3%22%20height%3D%227.3443%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3Crect%20x%3D%223.22363%22%20y%3D%2213.3302%22%20width%3D%222.3%22%20height%3D%223.71851%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3C%2Fsvg%3E%0A`,signal100:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%2214.4764%22%20y%3D%222.98926%22%20width%3D%222.3%22%20height%3D%2214.0597%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3Crect%20x%3D%2210.7255%22%20y%3D%225.93933%22%20width%3D%222.3%22%20height%3D%2211.1096%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3Crect%20x%3D%226.97455%22%20y%3D%229.70447%22%20width%3D%222.3%22%20height%3D%227.3443%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3Crect%20x%3D%223.22363%22%20y%3D%2213.3302%22%20width%3D%222.3%22%20height%3D%223.71851%22%20rx%3D%220.5%22%20fill%3D%22%230493EE%22%2F%3E%0A%3C%2Fsvg%3E%0A`},feeling:{guffaw:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M16.887%2010C16.887%2013.8037%2013.8036%2016.8871%209.99999%2016.8871C6.19638%2016.8871%203.11295%2013.8037%203.11295%2010C3.11295%206.19644%206.19638%203.11301%209.99999%203.11301C13.8036%203.11301%2016.887%206.19644%2016.887%2010Z%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.3%22%2F%3E%0A%3Crect%20x%3D%227.40741%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Crect%20x%3D%2211.1111%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Cpath%20d%3D%22M12.5355%2013.5821C13.0482%2013.1841%2013.3951%2012.6107%2013.5405%2012.0327C13.5934%2011.8226%2013.5051%2011.6349%2013.3518%2011.5331C13.2036%2011.4346%2013.0031%2011.4203%2012.8265%2011.5131C11.0615%2012.4407%208.94609%2012.4427%207.1828%2011.513C7.00629%2011.4199%206.80602%2011.4343%206.65798%2011.5329C6.50518%2011.6346%206.41701%2011.8217%206.46844%2012.0312C6.61029%2012.609%206.95079%2013.1833%207.46449%2013.5821C8.14361%2014.1093%209.05608%2014.3999%2010%2014.3999C10.9439%2014.3999%2011.8564%2014.1093%2012.5355%2013.5821Z%22%20fill%3D%22white%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.4%22%2F%3E%0A%3C%2Fsvg%3E%0A`,smile:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%229.99999%22%20cy%3D%2210%22%20r%3D%226.88704%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.3%22%2F%3E%0A%3Crect%20x%3D%227.40741%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Crect%20x%3D%2211.1111%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Cpath%20d%3D%22M7.03705%2011.8518C7.03705%2011.8518%207.77779%2013.7037%2010%2013.7037C12.2222%2013.7037%2012.963%2011.8518%2012.963%2011.8518%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.962963%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E%0A`,noninductive:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%229.99999%22%20cy%3D%2210%22%20r%3D%226.88704%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.3%22%2F%3E%0A%3Crect%20x%3D%227.40741%22%20y%3D%227.9259%22%20width%3D%221.48148%22%20height%3D%221.11111%22%20rx%3D%220.555556%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Crect%20x%3D%2211.1111%22%20y%3D%227.9259%22%20width%3D%221.48148%22%20height%3D%221.11111%22%20rx%3D%220.555556%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Cpath%20d%3D%22M7.03705%2012.5927C7.03705%2012.5927%208.14816%2012.5927%2010.3704%2012.5927C12.5926%2012.5927%2012.963%2012.5927%2012.963%2012.5927%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.962963%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E%0A`,dissatisfied:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%229.99999%22%20cy%3D%2210%22%20r%3D%226.88704%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.3%22%2F%3E%0A%3Crect%20x%3D%227.40741%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Crect%20x%3D%2211.1111%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Cpath%20d%3D%22M7.03705%2013.7037C7.03705%2013.7037%207.77779%2011.8519%2010%2011.8519C12.2222%2011.8519%2012.963%2013.7037%2012.963%2013.7037%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.962963%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E%0A`,impatient:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%229.99999%22%20cy%3D%2210%22%20r%3D%226.88704%22%20fill%3D%22%23FFBD37%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.3%22%2F%3E%0A%3Crect%20x%3D%227.40741%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Crect%20x%3D%2211.1111%22%20y%3D%227.40735%22%20width%3D%221.48148%22%20height%3D%221.48148%22%20rx%3D%220.740741%22%20fill%3D%22%238F5F00%22%2F%3E%0A%3Cpath%20d%3D%22M7.47573%2011.731C6.96306%2012.129%206.61613%2012.7024%206.47071%2013.2804C6.41784%2013.4905%206.50617%2013.6782%206.65942%2013.78C6.80761%2013.8785%207.00813%2013.8928%207.18477%2013.8C8.9498%2012.8724%2011.0652%2012.8704%2012.8285%2013.8002C13.005%2013.8932%2013.2052%2013.8788%2013.3533%2013.7802C13.5061%2013.6785%2013.5942%2013.4914%2013.5428%2013.2819C13.401%2012.7041%2013.0605%2012.1298%2012.5468%2011.731C11.8676%2011.2038%2010.9552%2010.9132%2010.0112%2010.9132C9.06732%2010.9132%208.15485%2011.2038%207.47573%2011.731Z%22%20fill%3D%22white%22%20stroke%3D%22%238F5F00%22%20stroke-width%3D%220.4%22%2F%3E%0A%3C%2Fsvg%3E%0A`},arrow:{"down-red":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M8.90467%203.99244C8.84611%204.1338%208.84611%204.31301%208.84611%204.67143V13.716L5.92068%2010.7906C5.66724%2010.5371%205.54052%2010.4104%205.39916%2010.3519C5.21067%2010.2738%204.9989%2010.2738%204.81041%2010.3519C4.66905%2010.4104%204.54233%2010.5371%204.28889%2010.7906C4.03545%2011.044%203.90873%2011.1707%203.85018%2011.3121C3.77211%2011.5006%203.77211%2011.7124%203.85018%2011.9008C3.90873%2012.0422%204.03545%2012.1689%204.28889%2012.4224L9.03476%2017.1682C9.07839%2017.2127%209.12737%2017.2617%209.18231%2017.3166L9.18239%2017.3167L9.18241%2017.3167C9.40545%2017.5398%209.53035%2017.6647%209.65346%2017.7313C9.67085%2017.7408%209.6882%2017.7492%209.70577%2017.7564C9.89425%2017.8345%2010.106%2017.8345%2010.2945%2017.7564C10.4359%2017.6979%2010.5626%2017.5712%2010.816%2017.3177C10.8986%2017.2352%2010.9677%2017.1661%2011.0253%2017.1056L15.7095%2012.4214L15.7095%2012.4213C15.963%2012.1679%2016.0897%2012.0412%2016.1482%2011.8998C16.2263%2011.7114%2016.2263%2011.4996%2016.1482%2011.3111C16.0897%2011.1697%2015.963%2011.043%2015.7095%2010.7896C15.4561%2010.5361%2015.3294%2010.4094%2015.188%2010.3509C14.9995%2010.2728%2014.7878%2010.2728%2014.5993%2010.3509C14.4579%2010.4094%2014.3312%2010.5361%2014.0778%2010.7896L14.0777%2010.7896L11.1538%2013.7135V4.67142C11.1538%204.31301%2011.1538%204.1338%2011.0953%203.99244C11.0172%203.80395%2010.8674%203.6542%2010.6789%203.57613C10.5376%203.51758%2010.3584%203.51758%209.99996%203.51758C9.64154%203.51758%209.46233%203.51758%209.32097%203.57613C9.13249%203.6542%208.98274%203.80395%208.90467%203.99244Z%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"right-gold":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M3.32508%2011.7609C3.46644%2011.8194%203.64565%2011.8194%204.00407%2011.8194H13.049L10.1235%2014.745C9.87002%2014.9984%209.7433%2015.1251%209.68475%2015.2665C9.60668%2015.455%209.60668%2015.6668%209.68475%2015.8552C9.7433%2015.9966%209.87002%2016.1233%2010.1235%2016.3768C10.3769%2016.6302%2010.5036%2016.7569%2010.645%2016.8155C10.8335%2016.8935%2011.0452%2016.8935%2011.2337%2016.8155C11.3751%2016.7569%2011.5018%2016.6302%2011.7552%2016.3768L16.5105%2011.6215C16.5524%2011.5803%2016.5983%2011.5344%2016.6493%2011.4834L16.6495%2011.4831C16.8561%2011.2765%2016.9785%2011.1542%2017.0484%2011.0394C17.0648%2011.0128%2017.0782%2010.9866%2017.0893%2010.9599C17.1674%2010.7714%2017.1674%2010.5596%2017.0893%2010.3711C17.0308%2010.2298%2016.904%2010.1031%2016.6506%209.84962C16.5685%209.76752%2016.4997%209.69872%2016.4394%209.64123L11.7542%204.95601C11.5007%204.70257%2011.374%204.57585%2011.2327%204.5173C11.0442%204.43923%2010.8324%204.43923%2010.6439%204.5173C10.5026%204.57585%2010.3758%204.70257%2010.1224%204.95601L10.1224%204.95601C9.86895%205.20945%209.74223%205.33617%209.68368%205.47753C9.60561%205.66601%209.60561%205.87779%209.68368%206.06627C9.74223%206.20764%209.86895%206.33436%2010.1224%206.5878L13.0463%209.51175H4.00407C3.64565%209.51175%203.46644%209.51175%203.32508%209.5703C3.1366%209.64837%202.98685%209.79812%202.90877%209.98661C2.85022%2010.128%202.85022%2010.3072%202.85022%2010.6656C2.85022%2011.024%202.85022%2011.2032%202.90877%2011.3446C2.98685%2011.5331%203.1366%2011.6828%203.32508%2011.7609Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"up-green":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M11.0936%2017.3406C11.1522%2017.1992%2011.1522%2017.02%2011.1522%2016.6616V7.61701L14.0776%2010.5424C14.3311%2010.7959%2014.4578%2010.9226%2014.5991%2010.9811C14.7876%2011.0592%2014.9994%2011.0592%2015.1879%2010.9811C15.3292%2010.9226%2015.456%2010.7959%2015.7094%2010.5424C15.9628%2010.289%2016.0896%2010.1623%2016.1481%2010.0209C16.2262%209.83243%2016.2262%209.62066%2016.1481%209.43217C16.0896%209.29081%2015.9628%209.16409%2015.7094%208.91065L10.9645%204.16576C10.9207%204.12105%2010.8714%204.07178%2010.8161%204.01648L10.8159%204.0163C10.5916%203.792%2010.4666%203.66696%2010.3428%203.60058C10.3261%203.59154%2010.3094%203.58358%2010.2925%203.57658C10.104%203.49851%209.89226%203.49851%209.70378%203.57658C9.56242%203.63514%209.4357%203.76186%209.18226%204.0153C9.09955%204.09801%209.03034%204.16722%208.97258%204.22785L4.28878%208.91166C4.03534%209.1651%203.90862%209.29182%203.85006%209.43318C3.77199%209.62166%203.77199%209.83344%203.85006%2010.0219C3.90862%2010.1633%204.03534%2010.29%204.28878%2010.5434C4.54221%2010.7969%204.66893%2010.9236%204.8103%2010.9822C4.99878%2011.0602%205.21056%2011.0602%205.39904%2010.9822C5.5404%2010.9236%205.66712%2010.7969%205.92056%2010.5434L5.92056%2010.5434L8.84449%207.61951V16.6616C8.84449%2017.02%208.84449%2017.1992%208.90305%2017.3406C8.98112%2017.5291%209.13087%2017.6788%209.31935%2017.7569C9.46072%2017.8154%209.63992%2017.8154%209.99834%2017.8154C10.3568%2017.8154%2010.536%2017.8154%2010.6773%2017.7569C10.8658%2017.6788%2011.0156%2017.5291%2011.0936%2017.3406Z%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"rightAndDown-gold":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.5062%206.72126C4.56476%206.86262%204.69148%206.98934%204.94492%207.24278L11.3404%2013.6382L7.20313%2013.6382C6.84471%2013.6382%206.66551%2013.6382%206.52414%2013.6968C6.33566%2013.7749%206.18591%2013.9246%206.10784%2014.1131C6.04928%2014.2545%206.04928%2014.4337%206.04928%2014.7921C6.04928%2015.1505%206.04928%2015.3297%206.10784%2015.4711C6.18591%2015.6596%206.33566%2015.8093%206.52414%2015.8874C6.66551%2015.9459%206.84471%2015.9459%207.20313%2015.9459L13.9194%2015.9459C13.9805%2015.9465%2014.0484%2015.9465%2014.1243%2015.9465H14.1243C14.4353%2015.9465%2014.6114%2015.9465%2014.7449%2015.9082C14.7659%2015.9023%2014.7859%2015.8954%2014.8052%2015.8874C14.9937%2015.8093%2015.1434%2015.6596%2015.2215%2015.4711C15.2801%2015.3297%2015.2801%2015.1505%2015.2801%2014.7921C15.2801%2014.6767%2015.2801%2014.5799%2015.2781%2014.497L15.2781%207.86957C15.2781%207.51115%2015.2781%207.33194%2015.2195%207.19058C15.1415%207.0021%2014.9917%206.85235%2014.8032%206.77428C14.6619%206.71572%2014.4827%206.71572%2014.1243%206.71572C13.7658%206.71572%2013.5866%206.71572%2013.4453%206.77428C13.2568%206.85235%2013.107%207.0021%2013.029%207.19058C12.9704%207.33194%2012.9704%207.51115%2012.9704%207.86957L12.9704%2012.0047L6.5767%205.61099C6.32326%205.35755%206.19654%205.23083%206.05518%205.17228C5.8667%205.09421%205.65492%205.09421%205.46644%205.17228C5.32508%205.23083%205.19836%205.35755%204.94492%205.61099C4.69148%205.86443%204.56476%205.99115%204.5062%206.13251C4.42813%206.32099%204.42813%206.53277%204.5062%206.72126Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"rightAndUp-gold":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6.05431%2016.1597C6.19567%2016.1012%206.32239%2015.9745%206.57583%2015.721L12.9712%209.32568L12.9712%2013.4626C12.9712%2013.821%2012.9712%2014.0002%2013.0297%2014.1416C13.1078%2014.3301%2013.2576%2014.4798%2013.446%2014.5579C13.5874%2014.6164%2013.7666%2014.6164%2014.125%2014.6164C14.4834%2014.6164%2014.6626%2014.6164%2014.804%2014.5579C14.9925%2014.4798%2015.1422%2014.3301%2015.2203%2014.1416C15.2789%2014.0002%2015.2789%2013.821%2015.2789%2013.4626L15.2789%206.75233C15.2795%206.68972%2015.2795%206.62004%2015.2795%206.54182L15.2795%206.54157C15.2795%206.22585%2015.2795%206.04918%2015.2395%205.91495C15.2339%205.89605%2015.2276%205.878%2015.2203%205.86053C15.1422%205.67204%2014.9925%205.52229%2014.804%205.44422C14.6626%205.38567%2014.4834%205.38567%2014.125%205.38567L14.125%205.38567C14.0075%205.38567%2013.9093%205.38567%2013.8254%205.38773L7.20256%205.38773C6.84414%205.38773%206.66493%205.38773%206.52357%205.44628C6.33509%205.52436%206.18534%205.6741%206.10727%205.86259C6.04871%206.00395%206.04871%206.18315%206.04871%206.54156V6.54157L6.04871%206.54159C6.04871%206.9%206.04871%207.0792%206.10727%207.22056C6.18534%207.40905%206.33509%207.55879%206.52357%207.63687C6.66493%207.69542%206.84414%207.69542%207.20256%207.69542H11.3379L4.94405%2014.0892C4.69061%2014.3427%204.56389%2014.4694%204.50533%2014.6108C4.42726%2014.7992%204.42726%2015.011%204.50533%2015.1995C4.56389%2015.3409%204.69061%2015.4676%204.94405%2015.721C5.19749%2015.9745%205.32421%2016.1012%205.46557%2016.1597C5.65405%2016.2378%205.86583%2016.2378%206.05431%2016.1597Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"down-gray":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M8.90467%203.99244C8.84611%204.1338%208.84611%204.31301%208.84611%204.67143V13.716L5.92068%2010.7906C5.66724%2010.5371%205.54052%2010.4104%205.39916%2010.3519C5.21067%2010.2738%204.9989%2010.2738%204.81041%2010.3519C4.66905%2010.4104%204.54233%2010.5371%204.28889%2010.7906C4.03545%2011.044%203.90873%2011.1707%203.85018%2011.3121C3.77211%2011.5006%203.77211%2011.7124%203.85018%2011.9008C3.90873%2012.0422%204.03545%2012.1689%204.28889%2012.4224L9.03476%2017.1682C9.07839%2017.2127%209.12737%2017.2617%209.18231%2017.3166L9.18239%2017.3167L9.18241%2017.3167C9.40545%2017.5398%209.53035%2017.6647%209.65346%2017.7313C9.67085%2017.7408%209.6882%2017.7492%209.70577%2017.7564C9.89425%2017.8345%2010.106%2017.8345%2010.2945%2017.7564C10.4359%2017.6979%2010.5626%2017.5712%2010.816%2017.3177C10.8986%2017.2352%2010.9677%2017.1661%2011.0253%2017.1056L15.7095%2012.4214L15.7095%2012.4213C15.963%2012.1679%2016.0897%2012.0412%2016.1482%2011.8998C16.2263%2011.7114%2016.2263%2011.4996%2016.1482%2011.3111C16.0897%2011.1697%2015.963%2011.043%2015.7095%2010.7896C15.4561%2010.5361%2015.3294%2010.4094%2015.188%2010.3509C14.9995%2010.2728%2014.7878%2010.2728%2014.5993%2010.3509C14.4579%2010.4094%2014.3312%2010.5361%2014.0778%2010.7896L14.0777%2010.7896L11.1538%2013.7135V4.67142C11.1538%204.31301%2011.1538%204.1338%2011.0953%203.99244C11.0172%203.80395%2010.8674%203.6542%2010.6789%203.57613C10.5376%203.51758%2010.3584%203.51758%209.99996%203.51758C9.64154%203.51758%209.46233%203.51758%209.32097%203.57613C9.13249%203.6542%208.98274%203.80395%208.90467%203.99244Z%22%20fill%3D%22%23999999%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"right-gray":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M3.32508%2011.7609C3.46644%2011.8194%203.64565%2011.8194%204.00407%2011.8194H13.049L10.1235%2014.745C9.87002%2014.9984%209.7433%2015.1251%209.68475%2015.2665C9.60668%2015.455%209.60668%2015.6668%209.68475%2015.8552C9.7433%2015.9966%209.87002%2016.1233%2010.1235%2016.3768C10.3769%2016.6302%2010.5036%2016.7569%2010.645%2016.8155C10.8335%2016.8935%2011.0452%2016.8935%2011.2337%2016.8155C11.3751%2016.7569%2011.5018%2016.6302%2011.7552%2016.3768L16.5105%2011.6215C16.5524%2011.5803%2016.5983%2011.5344%2016.6493%2011.4834L16.6495%2011.4831C16.8561%2011.2765%2016.9785%2011.1542%2017.0484%2011.0394C17.0648%2011.0128%2017.0782%2010.9866%2017.0893%2010.9599C17.1674%2010.7714%2017.1674%2010.5596%2017.0893%2010.3711C17.0308%2010.2298%2016.904%2010.1031%2016.6506%209.84962C16.5685%209.76752%2016.4997%209.69872%2016.4394%209.64123L11.7542%204.95601C11.5007%204.70257%2011.374%204.57585%2011.2327%204.5173C11.0442%204.43923%2010.8324%204.43923%2010.6439%204.5173C10.5026%204.57585%2010.3758%204.70257%2010.1224%204.95601L10.1224%204.95601C9.86895%205.20945%209.74223%205.33617%209.68368%205.47753C9.60561%205.66601%209.60561%205.87779%209.68368%206.06627C9.74223%206.20764%209.86895%206.33436%2010.1224%206.5878L13.0463%209.51175H4.00407C3.64565%209.51175%203.46644%209.51175%203.32508%209.5703C3.1366%209.64837%202.98685%209.79812%202.90877%209.98661C2.85022%2010.128%202.85022%2010.3072%202.85022%2010.6656C2.85022%2011.024%202.85022%2011.2032%202.90877%2011.3446C2.98685%2011.5331%203.1366%2011.6828%203.32508%2011.7609Z%22%20fill%3D%22%23999999%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"up-gray":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M11.0936%2017.3406C11.1522%2017.1992%2011.1522%2017.02%2011.1522%2016.6616V7.61701L14.0776%2010.5424C14.3311%2010.7959%2014.4578%2010.9226%2014.5991%2010.9811C14.7876%2011.0592%2014.9994%2011.0592%2015.1879%2010.9811C15.3292%2010.9226%2015.456%2010.7959%2015.7094%2010.5424C15.9628%2010.289%2016.0896%2010.1623%2016.1481%2010.0209C16.2262%209.83243%2016.2262%209.62066%2016.1481%209.43217C16.0896%209.29081%2015.9628%209.16409%2015.7094%208.91065L10.9645%204.16576C10.9207%204.12105%2010.8714%204.07178%2010.8161%204.01648L10.8159%204.0163C10.5916%203.792%2010.4666%203.66696%2010.3428%203.60058C10.3261%203.59154%2010.3094%203.58358%2010.2925%203.57658C10.104%203.49851%209.89226%203.49851%209.70378%203.57658C9.56242%203.63514%209.4357%203.76186%209.18226%204.0153C9.09955%204.09801%209.03034%204.16722%208.97258%204.22785L4.28878%208.91166C4.03534%209.1651%203.90862%209.29182%203.85006%209.43318C3.77199%209.62166%203.77199%209.83344%203.85006%2010.0219C3.90862%2010.1633%204.03534%2010.29%204.28878%2010.5434C4.54221%2010.7969%204.66893%2010.9236%204.8103%2010.9822C4.99878%2011.0602%205.21056%2011.0602%205.39904%2010.9822C5.5404%2010.9236%205.66712%2010.7969%205.92056%2010.5434L5.92056%2010.5434L8.84449%207.61951V16.6616C8.84449%2017.02%208.84449%2017.1992%208.90305%2017.3406C8.98112%2017.5291%209.13087%2017.6788%209.31935%2017.7569C9.46072%2017.8154%209.63992%2017.8154%209.99834%2017.8154C10.3568%2017.8154%2010.536%2017.8154%2010.6773%2017.7569C10.8658%2017.6788%2011.0156%2017.5291%2011.0936%2017.3406Z%22%20fill%3D%22%23999999%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"rightAndDown-gray":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.5062%206.72126C4.56476%206.86262%204.69148%206.98934%204.94492%207.24278L11.3404%2013.6382L7.20313%2013.6382C6.84471%2013.6382%206.66551%2013.6382%206.52414%2013.6968C6.33566%2013.7749%206.18591%2013.9246%206.10784%2014.1131C6.04928%2014.2545%206.04928%2014.4337%206.04928%2014.7921C6.04928%2015.1505%206.04928%2015.3297%206.10784%2015.4711C6.18591%2015.6596%206.33566%2015.8093%206.52414%2015.8874C6.66551%2015.9459%206.84471%2015.9459%207.20313%2015.9459L13.9194%2015.9459C13.9805%2015.9465%2014.0484%2015.9465%2014.1243%2015.9465H14.1243C14.4353%2015.9465%2014.6114%2015.9465%2014.7449%2015.9082C14.7659%2015.9023%2014.7859%2015.8954%2014.8052%2015.8874C14.9937%2015.8093%2015.1434%2015.6596%2015.2215%2015.4711C15.2801%2015.3297%2015.2801%2015.1505%2015.2801%2014.7921C15.2801%2014.6767%2015.2801%2014.5799%2015.2781%2014.497L15.2781%207.86957C15.2781%207.51115%2015.2781%207.33194%2015.2195%207.19058C15.1415%207.0021%2014.9917%206.85235%2014.8032%206.77428C14.6619%206.71572%2014.4827%206.71572%2014.1243%206.71572C13.7658%206.71572%2013.5866%206.71572%2013.4453%206.77428C13.2568%206.85235%2013.107%207.0021%2013.029%207.19058C12.9704%207.33194%2012.9704%207.51115%2012.9704%207.86957L12.9704%2012.0047L6.5767%205.61099C6.32326%205.35755%206.19654%205.23083%206.05518%205.17228C5.8667%205.09421%205.65492%205.09421%205.46644%205.17228C5.32508%205.23083%205.19836%205.35755%204.94492%205.61099C4.69148%205.86443%204.56476%205.99115%204.5062%206.13251C4.42813%206.32099%204.42813%206.53277%204.5062%206.72126Z%22%20fill%3D%22%23999999%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"rightAndUp-gray":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6.05431%2016.1597C6.19567%2016.1012%206.32239%2015.9745%206.57583%2015.721L12.9712%209.32568L12.9712%2013.4626C12.9712%2013.821%2012.9712%2014.0002%2013.0297%2014.1416C13.1078%2014.3301%2013.2576%2014.4798%2013.446%2014.5579C13.5874%2014.6164%2013.7666%2014.6164%2014.125%2014.6164C14.4834%2014.6164%2014.6626%2014.6164%2014.804%2014.5579C14.9925%2014.4798%2015.1422%2014.3301%2015.2203%2014.1416C15.2789%2014.0002%2015.2789%2013.821%2015.2789%2013.4626L15.2789%206.75233C15.2795%206.68972%2015.2795%206.62004%2015.2795%206.54182L15.2795%206.54157C15.2795%206.22585%2015.2795%206.04918%2015.2395%205.91495C15.2339%205.89605%2015.2276%205.878%2015.2203%205.86053C15.1422%205.67204%2014.9925%205.52229%2014.804%205.44422C14.6626%205.38567%2014.4834%205.38567%2014.125%205.38567L14.125%205.38567C14.0075%205.38567%2013.9093%205.38567%2013.8254%205.38773L7.20256%205.38773C6.84414%205.38773%206.66493%205.38773%206.52357%205.44628C6.33509%205.52436%206.18534%205.6741%206.10727%205.86259C6.04871%206.00395%206.04871%206.18315%206.04871%206.54156V6.54157L6.04871%206.54159C6.04871%206.9%206.04871%207.0792%206.10727%207.22056C6.18534%207.40905%206.33509%207.55879%206.52357%207.63687C6.66493%207.69542%206.84414%207.69542%207.20256%207.69542H11.3379L4.94405%2014.0892C4.69061%2014.3427%204.56389%2014.4694%204.50533%2014.6108C4.42726%2014.7992%204.42726%2015.011%204.50533%2015.1995C4.56389%2015.3409%204.69061%2015.4676%204.94405%2015.721C5.19749%2015.9745%205.32421%2016.1012%205.46557%2016.1597C5.65405%2016.2378%205.86583%2016.2378%206.05431%2016.1597Z%22%20fill%3D%22%23999999%22%2F%3E%0A%3C%2Fsvg%3E%0A`},shape:{cross:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%223.70374%22%20y%3D%228.14795%22%20width%3D%2212.5926%22%20height%3D%223.7037%22%20rx%3D%220.740741%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A`,up:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M9.44533%205.81157C9.74012%205.47858%2010.2598%205.47858%2010.5546%205.81157L16.2868%2012.2867C16.71%2012.7647%2016.3706%2013.5184%2015.7322%2013.5184H4.26776C3.62933%2013.5184%203.28995%2012.7647%203.71313%2012.2867L9.44533%205.81157Z%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3C%2Fsvg%3E%0A`,down:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M10.5547%2014.1884C10.2599%2014.5214%209.74019%2014.5214%209.4454%2014.1884L3.71321%207.71335C3.29002%207.23532%203.6294%206.48161%204.26784%206.48161L15.7322%206.48161C16.3707%206.48161%2016.7101%207.23532%2016.2869%207.71335L10.5547%2014.1884Z%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"rhomboid-red":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M2.1415%2011.1984C1.8412%2010.9074%201.8412%2010.4256%202.1415%2010.1346L9.48467%203.01785C9.77196%202.73942%2010.2284%202.73942%2010.5157%203.01786L17.8586%2010.1346C18.1589%2010.4256%2018.1589%2010.9074%2017.8586%2011.1984L10.5157%2018.3151C10.2284%2018.5936%209.77196%2018.5936%209.48467%2018.3152L2.1415%2011.1984Z%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"rhomboid-gold":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M2.1415%2011.1984C1.8412%2010.9074%201.8412%2010.4256%202.1415%2010.1346L9.48467%203.01785C9.77196%202.73942%2010.2284%202.73942%2010.5157%203.01786L17.8586%2010.1346C18.1589%2010.4256%2018.1589%2010.9074%2017.8586%2011.1984L10.5157%2018.3151C10.2284%2018.5936%209.77196%2018.5936%209.48467%2018.3152L2.1415%2011.1984Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"roundness-greed":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210.6664%22%20r%3D%227.03704%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"roundness-gold":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210.6664%22%20r%3D%227.03704%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"roundness-red":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210.6664%22%20r%3D%227.03704%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"roundness-pink":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210.6664%22%20r%3D%227.03704%22%20fill%3D%22%23FB9D9D%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"roundness-gray":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210.6664%22%20r%3D%227.03704%22%20fill%3D%22%23999999%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"roundness-black":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210.6664%22%20r%3D%227.03704%22%20fill%3D%22black%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"triangle-gold":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cg%20clip-path%3D%22url(%23clip0_613_237)%22%3E%0A%3Cpath%20d%3D%22M9.32308%204.41301C9.58368%203.82623%2010.4164%203.82623%2010.677%204.413L15.9526%2016.2917C16.1701%2016.7815%2015.8115%2017.3331%2015.2756%2017.3331H4.72454C4.18858%2017.3331%203.83002%2016.7815%204.04756%2016.2917L9.32308%204.41301Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fg%3E%0A%3Cdefs%3E%0A%3CclipPath%20id%3D%22clip0_613_237%22%3E%0A%3Crect%20width%3D%2220%22%20height%3D%2220%22%20fill%3D%22white%22%20transform%3D%22translate(0%200.666504)%22%2F%3E%0A%3C%2FclipPath%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E%0A`,"indicate-greed":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%222.76941%22%20y%3D%222.76941%22%20width%3D%2214.4612%22%20height%3D%2214.4612%22%20rx%3D%223%22%20fill%3D%22black%22%2F%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%224.5%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"indicate-gold":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%222.76941%22%20y%3D%222.76941%22%20width%3D%2214.4612%22%20height%3D%2214.4612%22%20rx%3D%223%22%20fill%3D%22black%22%2F%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%224.5%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"indicate-red":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%222.76941%22%20y%3D%222.76941%22%20width%3D%2214.4612%22%20height%3D%2214.4612%22%20rx%3D%223%22%20fill%3D%22black%22%2F%3E%0A%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%224.5%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A`},feedback2:{mistake2:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.12194%206.33702C4.1805%206.47839%204.30722%206.6051%204.56066%206.85854L8.36822%2010.6661L4.56062%2014.4737C4.30718%2014.7272%204.18046%2014.8539%204.12191%2014.9952C4.04384%2015.1837%204.04384%2015.3955%204.12191%2015.584C4.18046%2015.7253%204.30718%2015.8521%204.56062%2016.1055C4.81406%2016.3589%204.94078%2016.4857%205.08214%2016.5442C5.27062%2016.6223%205.4824%2016.6223%205.67089%2016.5442C5.81225%2016.4857%205.93897%2016.3589%206.19241%2016.1055L10%2012.2979L13.8074%2016.1053C14.0609%2016.3588%2014.1876%2016.4855%2014.329%2016.544C14.5174%2016.6221%2014.7292%2016.6221%2014.9177%2016.544C15.0591%2016.4855%2015.1858%2016.3588%2015.4392%2016.1053L15.4392%2016.1053C15.6927%2015.8519%2015.8194%2015.7252%2015.8779%2015.5838C15.956%2015.3953%2015.956%2015.1835%2015.8779%2014.9951C15.8194%2014.8537%2015.6927%2014.727%2015.4392%2014.4735L15.4392%2014.4735L11.6318%2010.6661L15.4392%206.85872C15.6926%206.60528%2015.8193%206.47856%2015.8779%206.3372C15.956%206.14871%2015.956%205.93694%2015.8779%205.74845C15.8193%205.60709%2015.6926%205.48037%2015.4392%205.22693C15.1857%204.97349%2015.059%204.84677%2014.9177%204.78822C14.7292%204.71015%2014.5174%204.71015%2014.3289%204.78822C14.1876%204.84677%2014.0608%204.97349%2013.8074%205.22693L10%209.03433L6.19244%205.22676C5.939%204.97332%205.81228%204.8466%205.67092%204.78805C5.48244%204.70997%205.27066%204.70997%205.08218%204.78805C4.94082%204.8466%204.8141%204.97332%204.56066%205.22676L4.56066%205.22676C4.30722%205.4802%204.1805%205.60692%204.12194%205.74828C4.04387%205.93676%204.04387%206.14854%204.12194%206.33702Z%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A`,warn2:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M8.49778%205.00963C8.48513%204.56774%208.47881%204.3468%208.56086%204.17746C8.63301%204.02856%208.75124%203.90689%208.89802%203.83052C9.06494%203.74365%209.28597%203.74365%209.72805%203.74365H10.272C10.714%203.74365%2010.9351%203.74365%2011.102%203.83052C11.2488%203.9069%2011.367%204.02856%2011.4392%204.17746C11.5212%204.3468%2011.5149%204.56775%2011.5022%205.00964L11.2644%2013.3173C11.2524%2013.737%2011.2464%2013.9468%2011.1609%2014.1065C11.0857%2014.2471%2010.9687%2014.3609%2010.826%2014.432C10.6639%2014.5129%2010.454%2014.5129%2010.0342%2014.5129H9.96582C9.54601%2014.5129%209.33611%2014.5129%209.17397%2014.432C9.0313%2014.3609%208.91426%2014.2471%208.83904%2014.1065C8.75357%2013.9468%208.74756%2013.737%208.73555%2013.3173L8.49778%205.00963Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3Crect%20x%3D%228.76917%22%20y%3D%2215.2817%22%20width%3D%222.46154%22%20height%3D%222.46154%22%20rx%3D%220.769231%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A`,correct2:`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cg%20clip-path%3D%22url(%23clip0_613_248)%22%3E%0A%3Cpath%20d%3D%22M15.689%205.69723C15.5476%205.75578%2015.4209%205.8825%2015.1675%206.13594L7.82436%2013.4791L4.83279%2010.4875C4.57935%2010.2341%204.45263%2010.1073%204.31127%2010.0488C4.12278%209.97071%203.91101%209.97071%203.72252%2010.0488C3.58116%2010.1073%203.45444%2010.2341%203.201%2010.4875C2.94756%2010.7409%202.82084%2010.8676%202.76229%2011.009C2.68422%2011.1975%202.68422%2011.4093%202.76229%2011.5978C2.82084%2011.7391%202.94756%2011.8658%203.201%2012.1193L7.0085%2015.9268C7.26194%2016.1802%207.38866%2016.3069%207.53002%2016.3655C7.7185%2016.4436%207.93028%2016.4436%208.11876%2016.3655C8.26013%2016.3069%208.38685%2016.1802%208.64028%2015.9268C8.66387%2015.9032%208.68636%2015.8807%208.7078%2015.8592L16.7993%207.76772C17.0527%207.51428%2017.1794%207.38756%2017.238%207.2462C17.3161%207.05772%2017.3161%206.84594%2017.238%206.65746C17.1794%206.5161%2017.0527%206.38938%2016.7993%206.13594C16.5458%205.8825%2016.4191%205.75578%2016.2777%205.69723C16.0893%205.61915%2015.8775%205.61915%2015.689%205.69723Z%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3C%2Fg%3E%0A%3Cdefs%3E%0A%3CclipPath%20id%3D%22clip0_613_248%22%3E%0A%3Crect%20width%3D%2220%22%20height%3D%2220%22%20fill%3D%22white%22%20transform%3D%22translate(0%200.666504)%22%2F%3E%0A%3C%2FclipPath%3E%0A%3C%2Fdefs%3E%0A%3C%2Fsvg%3E%0A`},flag:{"flag-green":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M15.4274%204.74935C14.0982%205.1012%2013.1363%205.13675%2012.3604%205.03379C11.5776%204.93009%2010.9487%204.68342%2010.2456%204.40416L10.2246%204.39527C9.53411%204.1212%208.76945%203.8175%207.81312%203.69157C6.84279%203.56268%205.71016%203.61898%204.24802%204.0049C4.09343%204.04217%203.95538%204.13393%203.85649%204.26515C3.7576%204.39636%203.70374%204.55925%203.70374%204.72712V17.3197C3.70374%2017.5162%203.79534%2017.7046%203.92654%2017.8435C4.05773%2017.9824%204.25893%2018.0605%204.44448%2018.0605C4.63002%2018.0605%204.84911%2017.9824%204.98031%2017.8435C5.11151%2017.7046%205.18522%2017.5162%205.18522%2017.3197V14.9123V12.5049C6.24649%2012.2738%206.97081%2012.2605%207.63962%2012.3486C8.42246%2012.4523%209.05139%2012.699%209.75448%2012.9782L9.77546%2012.9871C10.466%2013.2612%2011.2306%2013.5649%2012.1869%2013.6908C13.1601%2013.8197%2014.2976%2013.7627%2015.7667%2013.3738C15.8866%2013.3421%2016.0727%2013.2135%2016.1483%2013.111C16.2238%2013.0084%2016.2963%2012.8204%2016.2963%2012.6553V5.46787C16.2963%205.35535%2016.2721%205.24432%2016.2255%205.1432C16.1788%205.04208%2016.1111%204.95353%2016.0274%204.88428C15.9436%204.81502%2015.846%204.76688%2015.7421%204.7435C15.6382%204.72012%2015.494%204.73173%2015.4274%204.74935Z%22%20fill%3D%22%2359D01E%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"flag-gold":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M15.4274%204.74935C14.0982%205.1012%2013.1363%205.13675%2012.3604%205.03379C11.5776%204.93009%2010.9487%204.68342%2010.2456%204.40416L10.2246%204.39527C9.53411%204.1212%208.76945%203.8175%207.81312%203.69157C6.84279%203.56268%205.71016%203.61898%204.24802%204.0049C4.09343%204.04217%203.95538%204.13393%203.85649%204.26515C3.7576%204.39636%203.70374%204.55925%203.70374%204.72712V17.3197C3.70374%2017.5162%203.79534%2017.7046%203.92654%2017.8435C4.05773%2017.9824%204.25893%2018.0605%204.44448%2018.0605C4.63002%2018.0605%204.84911%2017.9824%204.98031%2017.8435C5.11151%2017.7046%205.18522%2017.5162%205.18522%2017.3197V14.9123V12.5049C6.24649%2012.2738%206.97081%2012.2605%207.63962%2012.3486C8.42246%2012.4523%209.05139%2012.699%209.75448%2012.9782L9.77546%2012.9871C10.466%2013.2612%2011.2306%2013.5649%2012.1869%2013.6908C13.1601%2013.8197%2014.2976%2013.7627%2015.7667%2013.3738C15.8866%2013.3421%2016.0727%2013.2135%2016.1483%2013.111C16.2238%2013.0084%2016.2963%2012.8204%2016.2963%2012.6553V5.46787C16.2963%205.35535%2016.2721%205.24432%2016.2255%205.1432C16.1788%205.04208%2016.1111%204.95353%2016.0274%204.88428C15.9436%204.81502%2015.846%204.76688%2015.7421%204.7435C15.6382%204.72012%2015.494%204.73173%2015.4274%204.74935Z%22%20fill%3D%22%23FFBD37%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"flag-red":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2221%22%20viewBox%3D%220%200%2020%2021%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M15.4274%204.74935C14.0982%205.1012%2013.1363%205.13675%2012.3604%205.03379C11.5776%204.93009%2010.9487%204.68342%2010.2456%204.40416L10.2246%204.39527C9.53411%204.1212%208.76945%203.8175%207.81312%203.69157C6.84279%203.56268%205.71016%203.61898%204.24802%204.0049C4.09343%204.04217%203.95538%204.13393%203.85649%204.26515C3.7576%204.39636%203.70374%204.55925%203.70374%204.72712V17.3197C3.70374%2017.5162%203.79534%2017.7046%203.92654%2017.8435C4.05773%2017.9824%204.25893%2018.0605%204.44448%2018.0605C4.63002%2018.0605%204.84911%2017.9824%204.98031%2017.8435C5.11151%2017.7046%205.18522%2017.5162%205.18522%2017.3197V14.9123V12.5049C6.24649%2012.2738%206.97081%2012.2605%207.63962%2012.3486C8.42246%2012.4523%209.05139%2012.699%209.75448%2012.9782L9.77546%2012.9871C10.466%2013.2612%2011.2306%2013.5649%2012.1869%2013.6908C13.1601%2013.8197%2014.2976%2013.7627%2015.7667%2013.3738C15.8866%2013.3421%2016.0727%2013.2135%2016.1483%2013.111C16.2238%2013.0084%2016.2963%2012.8204%2016.2963%2012.6553V5.46787C16.2963%205.35535%2016.2721%205.24432%2016.2255%205.1432C16.1788%205.04208%2016.1111%204.95353%2016.0274%204.88428C15.9436%204.81502%2015.846%204.76688%2015.7421%204.7435C15.6382%204.72012%2015.494%204.73173%2015.4274%204.74935Z%22%20fill%3D%22%23FE4B4B%22%2F%3E%0A%3C%2Fsvg%3E%0A`},cell:{"cell-0":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%224%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2211%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%224%22%20y%3D%224.00098%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2211%22%20y%3D%224.00098%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"cell-25":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%224%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2211%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%224.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%2211%22%20y%3D%224.00098%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"cell-50":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%224%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%2211%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%224.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%2211.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"cell-75":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%224.25%22%20y%3D%2211.251%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%2211%22%20y%3D%2211.001%22%20width%3D%225%22%20height%3D%225%22%20rx%3D%221%22%20fill%3D%22%23E5E5E5%22%2F%3E%0A%3Crect%20x%3D%224.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%2211.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3C%2Fsvg%3E%0A`,"cell-100":`data:image/svg+xml;charset=utf-8,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Crect%20x%3D%224.25%22%20y%3D%2211.251%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%2211.25%22%20y%3D%2211.251%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%224.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3Crect%20x%3D%2211.25%22%20y%3D%224.25098%22%20width%3D%224.5%22%20height%3D%224.5%22%20rx%3D%220.75%22%20fill%3D%22%230493EE%22%20stroke%3D%22%230493EE%22%20stroke-width%3D%220.5%22%2F%3E%0A%3C%2Fsvg%3E%0A`}},Ce=[{title:`sheet.cf.iconSet.direction`,group:[{name:`3Arrows`,list:[X.arrow[`up-green`],X.arrow[`right-gold`],X.arrow[`down-red`]]},{name:`3ArrowsGray`,list:[X.arrow[`up-gray`],X.arrow[`right-gray`],X.arrow[`down-gray`]]},{name:`4Arrows`,list:[X.arrow[`up-green`],X.arrow[`rightAndUp-gold`],X.arrow[`rightAndDown-gold`],X.arrow[`down-red`]]},{name:`4ArrowsGray`,list:[X.arrow[`up-gray`],X.arrow[`rightAndUp-gray`],X.arrow[`rightAndDown-gray`],X.arrow[`down-gray`]]},{name:`5Arrows`,list:[X.arrow[`up-green`],X.arrow[`rightAndUp-gold`],X.arrow[`right-gold`],X.arrow[`rightAndDown-gold`],X.arrow[`down-red`]]},{name:`5ArrowsGray`,list:[X.arrow[`up-gray`],X.arrow[`rightAndUp-gray`],X.arrow[`right-gray`],X.arrow[`rightAndDown-gray`],X.arrow[`down-gray`]]},{name:`3Triangles`,list:[X.shape.up,X.shape.cross,X.shape.down]}]},{title:`sheet.cf.iconSet.shape`,group:[{name:`3TrafficLights1`,list:[X.shape[`roundness-greed`],X.shape[`roundness-gold`],X.shape[`roundness-red`]]},{name:`3Signs`,list:[X.shape[`roundness-greed`],X.shape[`triangle-gold`],X.shape[`rhomboid-red`]]},{name:`3TrafficLights2`,list:[X.shape[`indicate-greed`],X.shape[`indicate-gold`],X.shape[`indicate-red`]]},{name:`4RedToBlack`,list:[X.shape[`roundness-red`],X.shape[`roundness-pink`],X.shape[`roundness-gray`],X.shape[`roundness-black`]]},{name:`4TrafficLights`,list:[X.shape[`roundness-greed`],X.shape[`roundness-gold`],X.shape[`roundness-red`],X.shape[`roundness-black`]]}]},{title:`sheet.cf.iconSet.mark`,group:[{name:`3Symbols`,list:[X.feedback.correct,X.feedback.warn,X.feedback.mistake]},{name:`3Symbols2`,list:[X.feedback2.correct2,X.feedback2.warn2,X.feedback2.mistake2]},{name:`3Flags`,list:[X.flag[`flag-green`],X.flag[`flag-gold`],X.flag[`flag-red`]]}]},{title:`sheet.cf.iconSet.rank`,group:[{name:`4Rating`,list:[X.signal.signal25,X.signal.signal50,X.signal.signal75,X.signal.signal100]},{name:`5Rating`,list:[X.signal.signal0,X.signal.signal25,X.signal.signal50,X.signal.signal75,X.signal.signal100]},{name:`5Quarters`,list:[X.progress.progress100,X.progress.progress75,X.progress.progress50,X.progress.progress25,X.progress.progress0]},{name:`_5Felling`,list:[X.feeling.guffaw,X.feeling.smile,X.feeling.noninductive,X.feeling.dissatisfied,X.feeling.impatient]},{name:`5Boxes`,list:[X.cell[`cell-100`],X.cell[`cell-75`],X.cell[`cell-50`],X.cell[`cell-25`],X.cell[`cell-0`]]},{name:`3Stars`,list:[X.star.starFull,X.star.starIncomplete,X.star.starEmpty]}]}],Z=Ce.reduce((e,t)=>{let{group:n}=t;for(let t of n)e[t.name]=t.list;return e},{});for(let e in Z){let t=Z[e];Object.freeze(t)}var we=`@univerjs/sheets-conditional-formatting`,Te=`0.18.0`;let Ee=`ssheets-conditional-formatting.config`;Symbol(Ee);let De={},Q=class extends t.Disposable{get _conditionalFormattingViewModelV2(){return this._injector.get(V)}constructor(e,t,n,r,i,a){super(),this._conditionalFormattingRuleModel=e,this._injector=t,this._univerInstanceService=n,this._resourceManagerService=r,this._sheetInterceptorService=i,this._commandService=a,this._initCellChange(),this._initSnapshot(),this._initSheetChange()}composeStyle(e,n,r,i){let a=this._conditionalFormattingViewModelV2.getCellCfs(e,n,r,i);if(!(a!=null&&a.length))return null;let o=[],s=-1;for(let t of a){let r=this._conditionalFormattingRuleModel.getRule(e,n,t.cfId);r&&(o.push({rule:r,cacheItem:t}),s===-1&&r.stopIfTrue&&(s=o.length-1))}if(!o.length)return null;let c=s>-1?o.slice(0,s+1):o,l={};for(let e=c.length-1;e>=0;e--){let{rule:n,cacheItem:r}=c[e],i=n.rule.type;if(i===d.highlightCell)r.result&&(0,t.merge)(l,{style:r.result});else if(i===d.colorScale){let e=r.result;e&&typeof e==`string`&&(l.style={...l.style||{},bg:{rgb:e}})}else if(i===d.dataBar){let e=r.result;e&&(l.dataBar=e,l.isShowValue=e.isShowValue)}else if(i===d.iconSet){let e=r.result;e&&(l.iconSet=e,l.isShowValue=e.isShowValue)}}return l}_initSnapshot(){let e=e=>{let t=this._conditionalFormattingRuleModel.getUnitRules(e),n={};return t?(t.forEach((e,t)=>{n[t]=e}),JSON.stringify(n)):``},n=e=>{if(!e)return{};try{return JSON.parse(e)}catch{return{}}};this.disposeWithMe(this._resourceManagerService.registerPluginResource({pluginName:s,businesses:[t.UniverInstanceType.UNIVER_SHEET],toJson:t=>e(t),parseJson:e=>n(e),onUnLoad:e=>{this._conditionalFormattingRuleModel.deleteUnitId(e),!(0,t.isInternalEditorID)(e)&&this._conditionalFormattingViewModelV2.clearCache()},onLoad:(e,t)=>{Object.keys(t).forEach(n=>{[...t[n]].reverse().forEach(t=>{this._conditionalFormattingRuleModel.addRule(e,n,t)})})}}))}_initSheetChange(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:e=>{if(e.id===n.RemoveSheetCommand.id){let t=e.params,r=(0,n.getSheetCommandTarget)(this._univerInstanceService,t);if(!r)return{redos:[],undos:[]};let{unitId:i,subUnitId:a}=r,o=this._conditionalFormattingRuleModel.getSubunitRules(i,a);if(!o)return{redos:[],undos:[]};let s=[],c=[];return o.forEach(e=>{let t={unitId:i,subUnitId:a,cfId:e.cfId};s.push({id:k.id,params:t}),c.push(...O(this._injector,t))}),{redos:s,undos:c}}else if(e.id===n.CopySheetCommand.id){let t=e.params,r=(0,n.getSheetCommandTarget)(this._univerInstanceService,t);if(!r)return{redos:[],undos:[]};let{unitId:i,subUnitId:a}=r,{targetSubUnitId:o}=t,s=this._conditionalFormattingRuleModel.getSubunitRules(i,a);if(!s)return{redos:[],undos:[]};let c=[],l=[];return s.forEach(e=>{let t={unitId:i,subUnitId:o,rule:{...e,cfId:this._conditionalFormattingRuleModel.createCfId(i,o)}};c.push({id:j.id,params:t}),l.push(A(this._injector,t))}),{redos:c,undos:l}}return{redos:[],undos:[]}}}))}_initCellChange(){this.disposeWithMe(this._commandService.onCommandExecuted(e=>{let r=(e,t,n)=>{let r=new Set;return n.forEach(([n,i])=>{let a=this._conditionalFormattingViewModelV2.getCellCfs(e,t,n,i);a==null||a.forEach(e=>r.add(e.cfId))}),[...r].map(n=>this._conditionalFormattingRuleModel.getRule(e,t,n)).filter(e=>!!e)};switch(e.id){case n.SetRangeValuesMutation.id:{let{subUnitId:n,unitId:i,cellValue:a}=e.params,o=[];new t.ObjectMatrix(a).forValue((e,t,n)=>{n&&Object.keys(n).some(e=>[`p`,`v`].includes(e))&&o.push([e,t])}),r(i,n,o).forEach(e=>{this._conditionalFormattingViewModelV2.markRuleDirty(i,n,e.cfId)});break}case n.InsertColMutation.id:case n.RemoveColMutation.id:{let r=e.params,i=(0,n.getSheetCommandTarget)(this._univerInstanceService,r);if(!i)return;let{worksheet:a,unitId:o,subUnitId:s}=i,{range:c}=r,l={...c,endColumn:a.getColumnCount()-1},u=this._conditionalFormattingRuleModel.getSubunitRules(o,s);u&&u.filter(e=>e.ranges.some(e=>t.Rectangle.intersects(e,l))).forEach(e=>{this._conditionalFormattingViewModelV2.markRuleDirty(o,s,e.cfId)});break}case n.RemoveRowMutation.id:case n.InsertRowMutation.id:{let r=e.params,i=(0,n.getSheetCommandTarget)(this._univerInstanceService,r);if(!i)return;let{worksheet:a,unitId:o,subUnitId:s}=i,{range:c}=r,l={...c,endRow:a.getRowCount()-1},u=this._conditionalFormattingRuleModel.getSubunitRules(o,s);u&&u.filter(e=>e.ranges.some(e=>t.Rectangle.intersects(e,l))).forEach(e=>{this._conditionalFormattingViewModelV2.markRuleDirty(o,s,e.cfId)});break}case n.MoveRowsMutation.id:{let r=e.params,i=(0,n.getSheetCommandTarget)(this._univerInstanceService,r);if(!i)return;let{worksheet:a,unitId:o,subUnitId:s}=i,{sourceRange:c,targetRange:l}=r,u={startRow:Math.min(c.startRow,l.startRow),endRow:a.getRowCount()-1,startColumn:0,endColumn:a.getColumnCount()-1},d=this._conditionalFormattingRuleModel.getSubunitRules(o,s);d&&d.filter(e=>e.ranges.some(e=>t.Rectangle.intersects(e,u))).forEach(e=>{this._conditionalFormattingViewModelV2.markRuleDirty(o,s,e.cfId)});break}case n.MoveColsMutation.id:{let r=e.params,i=(0,n.getSheetCommandTarget)(this._univerInstanceService,r);if(!i)return;let{worksheet:a,unitId:o,subUnitId:s}=i,{sourceRange:c,targetRange:l}=r,u={startRow:0,endRow:a.getRowCount()-1,startColumn:Math.min(c.startColumn,l.startColumn),endColumn:a.getColumnCount()-1},d=this._conditionalFormattingRuleModel.getSubunitRules(o,s);d&&d.filter(e=>e.ranges.some(e=>t.Rectangle.intersects(e,u))).forEach(e=>{this._conditionalFormattingViewModelV2.markRuleDirty(o,s,e.cfId)});break}case n.MoveRangeMutation.id:{let{unitId:n,to:i,from:a}=e.params,o=e=>{let i=[];new t.ObjectMatrix(e.value).forValue((e,t)=>{i.push([e,t])}),r(n,e.subUnitId,i).forEach(t=>{this._conditionalFormattingViewModelV2.markRuleDirty(n,e.subUnitId,t.cfId)})};o(i),o(a);break}case n.ReorderRangeMutation.id:{let{range:n,unitId:r,subUnitId:i}=e.params,a=this._conditionalFormattingRuleModel.getSubunitRules(r,i);a&&a.filter(e=>e.ranges.some(e=>t.Rectangle.intersects(e,n))).forEach(e=>{this._conditionalFormattingViewModelV2.markRuleDirty(r,i,e.cfId)});break}}}))}};Q=F([P(0,(0,t.Inject)(E)),P(1,(0,t.Inject)(t.Injector)),P(2,(0,t.Inject)(t.IUniverInstanceService)),P(3,(0,t.Inject)(t.IResourceManagerService)),P(4,(0,t.Inject)(n.SheetInterceptorService)),P(5,(0,t.Inject)(t.ICommandService))],Q);let $=class extends t.Plugin{constructor(e=De,n,r,i){super(),this._config=e,this._injector=n,this._commandService=r,this._configService=i;let{...a}=(0,t.merge)({},De,this._config);this._configService.setConfig(Ee,a),[[Q],[I],[E],[V]].forEach(e=>{this._injector.add(e)}),[ne,re,ie,ae,oe,se,j,k,M,D].forEach(e=>{this._commandService.registerCommand(e)})}onStarting(){this._injector.get(Q),(0,t.touchDependencies)(this._injector,[[Q],[V]])}};T($,`pluginName`,s),T($,`packageName`,we),T($,`version`,Te),T($,`type`,t.UniverInstanceType.UNIVER_SHEET),$=F([(0,t.DependentOn)(i.UniverFormulaEnginePlugin),P(1,(0,t.Inject)(t.Injector)),P(2,(0,t.Inject)(t.ICommandService)),P(3,t.IConfigService)],$);let Oe=`sheet-conditional-rule-icon`,ke=e=>{let{startRow:t,endRow:n,startColumn:r,endColumn:i}=e;return`${t}-${n}-${r}-${i}`};var Ae=class extends o.SheetExtension{constructor(){super(),T(this,`_paddingRightAndLeft`,2),T(this,`_width`,15),T(this,`_imageMap`,new Map),T(this,`uKey`,Oe),T(this,`Z_INDEX`,35),T(this,`_radius`,1),this._init()}draw(e,n,r,i){let{worksheet:a}=r;if(!a)return!1;let o=new Set;e.save(),t.Range.foreach(r.rowColumnSegment,(t,n)=>{if(!a.getRowVisible(t)||!a.getColVisible(n))return;let s=r.getCellWithCoordByIndex(t,n,!1),{isMerged:c,isMergedMainCell:l,mergeInfo:u}=s,d=a.getCell(t,n);if(c&&(d=a.getCell(u.startRow,u.startColumn)),!(d!=null&&d.iconSet))return;let{iconType:f,iconId:p}=d.iconSet;if(f===`EMPTY_ICON_TYPE`)return;let m=this._imageMap.get(this._createKey(f,p));if(!m||!this.isRenderDiffRangesByCell(u,i))return;if(c||l){let e=ke(u);if(o.has(e))return;o.add(e)}let{startX:h,endX:g,startY:_,endY:v}=c||l?u:s,y=g-h,b=v-_;if(this._width>b||this._width>y+this._paddingRightAndLeft*2)return;let x=(b-this._width)/2+_;e.drawImage(m,h+this._paddingRightAndLeft,x,this._width,this._width)}),e.restore()}_init(){for(let e in Z)Z[e].forEach((t,n)=>{let r=this._createKey(e,String(n)),i=new Image;i.onload=()=>{this._imageMap.set(r,i)},i.src=t})}_createKey(e,t){return`${e}_${t}`}};o.SpreadsheetExtensionRegistry.add(Ae);function je(e){if(typeof e!=`object`||!e)return e;let t={};for(let n in e)if(e.hasOwnProperty(n)){let r=je(e[n]);r!==void 0&&(t[n]=r)}return t}e.AddCfCommand=ne,e.AddConditionalRuleMutation=j,e.AddConditionalRuleMutationUndoFactory=A,e.CFNumberOperator=u,e.CFRuleType=d,e.CFSubRuleType=f,e.CFTextOperator=c,e.CFTimePeriodOperator=l,e.CFValueType=p,e.CONDITIONAL_FORMATTING_VIEWPORT_CACHE_LENGTH=B,e.ClearRangeCfCommand=re,e.ClearWorksheetCfCommand=ie,Object.defineProperty(e,`ConditionalFormattingFormulaService`,{enumerable:!0,get:function(){return I}}),e.ConditionalFormattingIcon=Ae,e.ConditionalFormattingRuleModel=E,Object.defineProperty(e,`ConditionalFormattingService`,{enumerable:!0,get:function(){return Q}}),Object.defineProperty(e,`ConditionalFormattingViewModel`,{enumerable:!0,get:function(){return V}}),e.DEFAULT_BG_COLOR=`#fff`,e.DEFAULT_FONT_COLOR=`#000000`,e.DEFAULT_PADDING=2,e.DEFAULT_WIDTH=15,e.DataBar=fe,e.DeleteCfCommand=ae,e.DeleteConditionalRuleMutation=k,e.DeleteConditionalRuleMutationUndoFactory=O,e.EMPTY_ICON_TYPE=`EMPTY_ICON_TYPE`,e.IconUKey=Oe,e.MoveCfCommand=oe,e.MoveConditionalRuleMutation=D,e.MoveConditionalRuleMutationUndoFactory=te,e.SHEET_CONDITIONAL_FORMATTING_PLUGIN=s,e.SetCfCommand=se,e.SetConditionalRuleMutation=M,Object.defineProperty(e,`UniverSheetsConditionalFormattingPlugin`,{enumerable:!0,get:function(){return $}}),e.anchorUndoFactory=b,e.compareWithNumber=q,e.createCfId=S,e.createDefaultRule=m,e.createDefaultValue=h,e.createDefaultValueByValueType=g,e.dataBarUKey=le,e.defaultDataBarNativeColor=`#abd91a`,e.defaultDataBarPositiveColor=`#ffbe38`,e.defaultPlaceholderColor=ue,e.filterRange=Y,e.findIndexByAnchor=_,e.getCacheStyleMatrix=be,e.getCellValue=W,e.getColorScaleFromValue=J,e.getMaxInFormulaResult=Se,e.getOppositeOperator=xe,e.getValueByType=K,e.iconGroup=Ce,e.iconMap=Z,e.isAnchorEqual=x,e.isFloatsEqual=H,e.isNullable=U,Object.defineProperty(e,`isRangesEqual`,{enumerable:!0,get:function(){return t.isRangesEqual}}),e.moveByAnchor=v,e.removeUndefinedAttr=je,e.serialTimeToTimestamp=ye,e.setConditionalRuleMutationUndoFactory=N,e.toYMD_1900=ve,e.transformSupportSymmetryAnchor=y});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@univerjs/sheets-conditional-formatting",
3
- "version": "0.17.0",
3
+ "version": "0.18.0",
4
4
  "private": false,
5
5
  "description": "Conditional formatting plugin for Univer Sheets",
6
6
  "author": "DreamNum <developer@univer.ai>",
@@ -58,25 +58,26 @@
58
58
  "rxjs": ">=7.0.0"
59
59
  },
60
60
  "dependencies": {
61
- "@univerjs/core": "0.17.0",
62
- "@univerjs/engine-formula": "0.17.0",
63
- "@univerjs/engine-render": "0.17.0",
64
- "@univerjs/sheets": "0.17.0"
61
+ "@univerjs/core": "0.18.0",
62
+ "@univerjs/engine-formula": "0.18.0",
63
+ "@univerjs/sheets": "0.18.0",
64
+ "@univerjs/engine-render": "0.18.0"
65
65
  },
66
66
  "devDependencies": {
67
67
  "@univerjs/icons-svg": "^1.1.1",
68
68
  "rxjs": "^7.8.2",
69
69
  "typescript": "^5.9.3",
70
- "vite": "^7.3.1",
71
- "vitest": "^4.0.18",
72
- "@univerjs-infra/shared": "0.17.0"
70
+ "vitest": "^4.1.0",
71
+ "@univerjs-infra/shared": "0.18.0"
73
72
  },
74
73
  "scripts": {
75
74
  "test": "vitest run",
76
75
  "test:watch": "vitest",
77
76
  "coverage": "vitest run --coverage",
78
77
  "typecheck": "tsc --noEmit",
79
- "build": "univer-cli build"
78
+ "build:bundle": "univer-cli build",
79
+ "build:types": "tsc -p tsconfig.node.json",
80
+ "build": "pnpm run build:bundle && pnpm run build:types"
80
81
  },
81
82
  "module": "./lib/es/index.js"
82
83
  }