안녕하세요 그레이프시티입니다.
문의하신 이슈에 대해 본사 개발팀에 확인해본 결과, Wijmo 컴포넌트를 사용하는 어플리케이션에서 악성 코드를 실행시킬 지점을 제공할 수 있는 eval() 메서드를 포함한 문자열 템플릿으로부터 CSP(content security policy) 오류를 방지하기 위해 변경된 사항입니다.
따라서 최신 버전부터 cellTemplate 속성에 전달하는 문자열 중에서 ICellTemplateContext 인터페이스의 속성을 직접 사용하는 것만 허용되며 substring()과 같은 복잡한 기능이 포함되어 있는 경우, 함수를 사용하셔야 합니다.
예를 들어, ICellTemplateContext 인터페이스의 속성만 사용하고 복잡한 연산이 없으므로 아래와 같은 문자열은 cellTemplate 속성에 전달될 수 있습니다.
cellTemplate: "(binding:${col.binding}) | (rowIndex:${row.index}) : value => ${value}"
다만 복잡한 계산이 포함된 경우에는 아래와 같이 함수를 사용해주시기 바랍니다.
cellTemplate: (ctx) => wijmo.glbz`${ctx.text.substring(0, 3)}-${ctx.text.substring(3, 5)}-${ctx.text.substring(5)}`
제품 기능 향상을 위해 기존의 사용법이 변경되는 경우는 거의 발생하지 않는 예외 케이스입니다. 따라서 이와 같은 경우가 다시 발생할 것에 대해 크게 걱정하지 않으셔도 됩니다. 만약 추후 사용하시다가 비슷한 문제가 발생하시면 저희 쪽으로 문의 주시면 빠르게 확인 후 회신 드리겠습니다.
더불어 Wijmo 라이선스는 2022 v1 구매 시 2023 v1까지 사용하실 수 있습니다. latest 버전으로 계속 사용하셨다고 말씀해 주셨는데 2022 v1 구매 및 적용된 상태에서 자동으로 2023 v2 변경 시 라이선스 팝업 경고창 및 워터마크가 표시될 수 있습니다. 이를 방지하기 위해서 5.latest보다는 특정 버전으로 사용하시길 권장 드립니다.
불편을 드려 죄송합니다.
다른 궁금한 점이 생기면 문의주시기 바랍니다.
감사합니다.
그레이프시티 드림