비관리자 사용자에게 color-input 컴포넌트 사용

안녕하세요 :waving_hand:

제 플러그인 중 하나에서 color-input 컴포넌트를 사용하려고 합니다. 하지만 이 컴포넌트는 discourse/admin 폴더에 위치해 있어, 일반 관리자가 아닌 사용자가 가져오기를 시도하면 Discourse가 비관리자 사용자의 관리자 컴포넌트 로딩을 차단하기 때문에(제 이해가 맞다면) 컴포넌트를 찾을 수 없습니다.

이 컴포넌트를 관리자 폴더 밖으로 이동시키는 것이 합리적인가요?

물론 대안은 자체 컴포넌트를 사용하거나 기존 컴포넌트를 복사하는 것이지만, 먼저 여쭤보고 싶었습니다. 사용자 권한과 관계없이 이 컴포넌트를 로드할 수 있는 방법이 있을 수 있지만, 저는 어떻게 해야 하는지 모르겠습니다.

도움 주셔서 감사합니다!

아니면, 일반 사용자가 사용할 수 있는 TC/플러그인(커스터마이징을 통한 프로그래밍 방식의 접근만 가능)에서 모든 관리자 기능을 제공하도록 하는 것은 어떨까요? 이 또한 유용할 수 있습니다.

플러그인의 번들이 트리 셰이킹되는지 모르겠기 때문에 모든 관리자 기능을 사용 가능하게 하면 비용이 크게 발생할 수 있습니다. 하지만 일반적으로 매우 좋은 컴포넌트들이므로, 이를 사용할 수 있게 되면 좋겠다는 데에는 동의합니다.

네, 바로 그 문제입니다. 아직 자동 트라이 셰이킹(tree-shaking) 기능이 없습니다. 일반 사용자가 네트워크를 통해 관리 모듈을 로드하는 비용을 치르지 않도록, 관리 모듈은 수동으로 분리되어 있습니다.

그것이 아마도 최선의 방법일 것입니다. 기억이 정확하다면 색상 선택기는 상당히 독립적이라 복사하기 쉬울 것입니다. 또한 이는 코어 컴포넌트(실제로는 "공개 API"로 간주되지 않음)에 변경 사항이 생겼을 때 플러그인을 격리하는 장점도 있습니다.

아무튼 답변해 주셔서 감사합니다!