basuicn 0.2.4 → 0.2.6
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.
- package/README.md +96 -96
- package/README_CLI.md +44 -44
- package/dist/assets/abap-CglpPUUh.js +1 -0
- package/dist/assets/actionscript-3-CGv72Q9E.js +1 -0
- package/dist/assets/ada-CfxXaXwr.js +1 -0
- package/dist/assets/andromeeda-DXsn6mTE.js +1 -0
- package/dist/assets/angular-html-Bc8jBW13.js +1 -0
- package/dist/assets/angular-ts-BKEiR2gl.js +1 -0
- package/dist/assets/apache-D5xAQKSB.js +1 -0
- package/dist/assets/apex-qgfedJV2.js +1 -0
- package/dist/assets/apl-akXtgiiz.js +1 -0
- package/dist/assets/applescript-DqumQxTt.js +1 -0
- package/dist/assets/ara-Ditv3ow6.js +1 -0
- package/dist/assets/asciidoc-DL8QwiT7.js +1 -0
- package/dist/assets/asm-K6TMxl3o.js +1 -0
- package/dist/assets/astro-CN0Tv6yD.js +1 -0
- package/dist/assets/aurora-x-DGv-xZaa.js +1 -0
- package/dist/assets/awk-CYSfQSDT.js +1 -0
- package/dist/assets/ayu-dark-DGBaJbpH.js +1 -0
- package/dist/assets/ayu-light-BQrGPVs2.js +1 -0
- package/dist/assets/ayu-mirage-Do-5o2VL.js +1 -0
- package/dist/assets/ballerina-BE-8n54s.js +1 -0
- package/dist/assets/base-80a1f760-BubTTHfk.js +1 -0
- package/dist/assets/bat-B1zTc1QZ.js +1 -0
- package/dist/assets/beancount-DhObrvif.js +1 -0
- package/dist/assets/berry-Cnbvthv1.js +1 -0
- package/dist/assets/bibtex-pp5SrwZy.js +1 -0
- package/dist/assets/bicep-BL6eYxbs.js +1 -0
- package/dist/assets/bird2-D57-fQHo.js +1 -0
- package/dist/assets/blade-e8vwYS05.js +1 -0
- package/dist/assets/bsl-B0twaj2j.js +1 -0
- package/dist/assets/c-BbKTZcBW.js +1 -0
- package/dist/assets/c3-BHTco5Hb.js +1 -0
- package/dist/assets/cadence-CoPxW0qb.js +1 -0
- package/dist/assets/cairo-DASKFAWI.js +1 -0
- package/dist/assets/catppuccin-frappe-9fYwMJCf.js +1 -0
- package/dist/assets/catppuccin-latte-BUiKH1yZ.js +1 -0
- package/dist/assets/catppuccin-macchiato-ZmO2e0M_.js +1 -0
- package/dist/assets/catppuccin-mocha-CFwbXQfO.js +1 -0
- package/dist/assets/chunk-BEqpzyXh.js +1 -0
- package/dist/assets/clarity-DVUGm1xP.js +1 -0
- package/dist/assets/clojure-BgXJG6FG.js +1 -0
- package/dist/assets/cmake-CZndsvm6.js +1 -0
- package/dist/assets/cobol-DYVFfDXp.js +1 -0
- package/dist/assets/codeowners-Dd7a447M.js +1 -0
- package/dist/assets/codeql-XJR6llG-.js +1 -0
- package/dist/assets/coffee--RG78j0v.js +1 -0
- package/dist/assets/common-lisp-BOMbLvgT.js +1 -0
- package/dist/assets/consoleHook-59e792cb-3dE1G69s.js +2 -0
- package/dist/assets/coq-DnhmQYDa.js +1 -0
- package/dist/assets/cpp-B8wbpQ1o.js +1 -0
- package/dist/assets/crystal-2t0qtInQ.js +1 -0
- package/dist/assets/csharp-BdEyRqBm.js +1 -0
- package/dist/assets/css-BGJ_Me92.js +1 -0
- package/dist/assets/csv-CXchYFbz.js +1 -0
- package/dist/assets/cue-D7YpBZvd.js +1 -0
- package/dist/assets/cypher-XIm1N8YJ.js +1 -0
- package/dist/assets/d-DvB0pbZH.js +1 -0
- package/dist/assets/dark-plus-BUdpMFIA.js +1 -0
- package/dist/assets/dart-CJ0nYDsz.js +1 -0
- package/dist/assets/dax-CEynWJsU.js +1 -0
- package/dist/assets/desktop-Dk-YiYS_.js +1 -0
- package/dist/assets/diff-abLZ-xM1.js +1 -0
- package/dist/assets/docker-BT48KsRJ.js +1 -0
- package/dist/assets/dotenv-NOMQQbM0.js +1 -0
- package/dist/assets/dracula-BUW0ZyNO.js +1 -0
- package/dist/assets/dracula-soft-BMjAt1_u.js +1 -0
- package/dist/assets/dream-maker-D26TP1Q3.js +1 -0
- package/dist/assets/edge-CxTqP9J2.js +1 -0
- package/dist/assets/elixir-rfdqmTwN.js +1 -0
- package/dist/assets/elm-b1gwuH2v.js +1 -0
- package/dist/assets/emacs-lisp-CgQmnPzZ.js +1 -0
- package/dist/assets/erb-BzQ154zj.js +1 -0
- package/dist/assets/erlang-DnbJbitJ.js +1 -0
- package/dist/assets/everforest-dark-hC6a272f.js +1 -0
- package/dist/assets/everforest-light-BTpbYY5G.js +1 -0
- package/dist/assets/fennel-DWOL-Ewx.js +1 -0
- package/dist/assets/fish-CQPQq0pQ.js +1 -0
- package/dist/assets/fluent-BYdsr2M8.js +1 -0
- package/dist/assets/fortran-fixed-form-Bse4XUyD.js +1 -0
- package/dist/assets/fortran-free-form-C_EtY4F9.js +1 -0
- package/dist/assets/fsharp-Dy8OnZ0O.js +1 -0
- package/dist/assets/gdresource-BD_7yRHA.js +1 -0
- package/dist/assets/gdscript-CH_tD-VB.js +1 -0
- package/dist/assets/gdshader-BemFblFP.js +1 -0
- package/dist/assets/genie-hCPg_eq7.js +1 -0
- package/dist/assets/gherkin-CO0ypD1P.js +1 -0
- package/dist/assets/git-commit-CIMjlyHf.js +1 -0
- package/dist/assets/git-rebase-BhLC-wcM.js +1 -0
- package/dist/assets/github-dark-cA72fqmI.js +1 -0
- package/dist/assets/github-dark-default-DiYTFvY5.js +1 -0
- package/dist/assets/github-dark-dimmed-D-uBHzyG.js +1 -0
- package/dist/assets/github-dark-high-contrast-BrUSkckI.js +1 -0
- package/dist/assets/github-light-default-BT-6Vf7C.js +1 -0
- package/dist/assets/github-light-high-contrast-DqmEyTTc.js +1 -0
- package/dist/assets/github-light-piFPqU8R.js +1 -0
- package/dist/assets/gleam-CWJA_H5i.js +1 -0
- package/dist/assets/glimmer-js-UABHyGyr.js +1 -0
- package/dist/assets/glimmer-ts-BZodzUJU.js +1 -0
- package/dist/assets/glsl-DB4OjpDf.js +1 -0
- package/dist/assets/gn-nlTwLSjP.js +1 -0
- package/dist/assets/gnuplot-wYV0MbPl.js +1 -0
- package/dist/assets/go-Dhd8RnZp.js +1 -0
- package/dist/assets/graphql-CjkeIubW.js +1 -0
- package/dist/assets/groovy-BusafOA8.js +1 -0
- package/dist/assets/gruvbox-dark-hard-BrrZYoPF.js +1 -0
- package/dist/assets/gruvbox-dark-medium-DsxcLuUs.js +1 -0
- package/dist/assets/gruvbox-dark-soft-DQXOs_GH.js +1 -0
- package/dist/assets/gruvbox-light-hard-CtHwj_cB.js +1 -0
- package/dist/assets/gruvbox-light-medium-CPJMdgXQ.js +1 -0
- package/dist/assets/gruvbox-light-soft-C4Xh9Hc-.js +1 -0
- package/dist/assets/hack-hTulK3E0.js +1 -0
- package/dist/assets/haml-0xmzGOI8.js +1 -0
- package/dist/assets/handlebars-BXRDjB0q.js +1 -0
- package/dist/assets/haskell-CaDqJkn4.js +1 -0
- package/dist/assets/haxe-Dxg-8_J7.js +1 -0
- package/dist/assets/hcl-Bjg-rMJ0.js +1 -0
- package/dist/assets/hjson-BMbeOOMg.js +1 -0
- package/dist/assets/hlsl-D-cuwCFV.js +1 -0
- package/dist/assets/horizon-BofYY9of.js +1 -0
- package/dist/assets/horizon-bright-BtJSJLk4.js +1 -0
- package/dist/assets/houston-BIBYxFpQ.js +1 -0
- package/dist/assets/html-DNHpMnNu.js +1 -0
- package/dist/assets/html-derivative-BBCc_afp.js +1 -0
- package/dist/assets/http-BJnSZ0fu.js +1 -0
- package/dist/assets/hurl-DVkxBugG.js +1 -0
- package/dist/assets/hxml-CGx66ebi.js +1 -0
- package/dist/assets/hy-Cye3Jt7O.js +1 -0
- package/dist/assets/imba-CjkQtgD2.js +1 -0
- package/dist/assets/index-599aeaf7-tfuZHJ9A.js +16 -0
- package/dist/assets/index-DMOps9TG.js +1893 -0
- package/dist/assets/index-DReVoGMp.css +1 -0
- package/dist/assets/ini-BvMtfDNl.js +1 -0
- package/dist/assets/java-D2XAnJB0.js +1 -0
- package/dist/assets/javascript-X-FQYNvg.js +1 -0
- package/dist/assets/jinja-BnJYnQiG.js +1 -0
- package/dist/assets/jison-DnA7sY80.js +1 -0
- package/dist/assets/json-SC38HrRr.js +1 -0
- package/dist/assets/json5-BCxDPjxU.js +1 -0
- package/dist/assets/jsonc-BV8VFjqO.js +1 -0
- package/dist/assets/jsonl-DHrr7c-M.js +1 -0
- package/dist/assets/jsonnet-xURar8mu.js +1 -0
- package/dist/assets/jssm-DtoLUQAt.js +1 -0
- package/dist/assets/jsx-bsCPoRSN.js +1 -0
- package/dist/assets/julia-Dk81kxcu.js +1 -0
- package/dist/assets/just-DvZye5TV.js +1 -0
- package/dist/assets/kanagawa-dragon-COwlYgQB.js +1 -0
- package/dist/assets/kanagawa-lotus-GZWqyq_E.js +1 -0
- package/dist/assets/kanagawa-wave-CP4uw3DX.js +1 -0
- package/dist/assets/kdl-DGo2N7N5.js +1 -0
- package/dist/assets/kotlin-Cm4W8Bbs.js +1 -0
- package/dist/assets/kusto-DNFwIuzY.js +1 -0
- package/dist/assets/laserwave-DfABGYsD.js +1 -0
- package/dist/assets/latex-D3SwBEWn.js +1 -0
- package/dist/assets/lean-D-8a6Wwv.js +1 -0
- package/dist/assets/less-B-qZzFKw.js +1 -0
- package/dist/assets/light-plus-DS_rmE1N.js +1 -0
- package/dist/assets/liquid-CVass2H-.js +1 -0
- package/dist/assets/llvm-Ch-k6TUk.js +1 -0
- package/dist/assets/log-BGwbCG2S.js +1 -0
- package/dist/assets/logo-DHGHbFWy.js +1 -0
- package/dist/assets/lua-D_mthnvY.js +1 -0
- package/dist/assets/luau-qsvm_nYh.js +1 -0
- package/dist/assets/make-Dlfjp_Q8.js +1 -0
- package/dist/assets/markdown-COh4ruD_.js +1 -0
- package/dist/assets/marko-LZp-7Vlz.js +1 -0
- package/dist/assets/material-theme-Ccrl1jie.js +1 -0
- package/dist/assets/material-theme-darker-CcOH0iHe.js +1 -0
- package/dist/assets/material-theme-lighter-DoKpC7NM.js +1 -0
- package/dist/assets/material-theme-ocean-BcvBZHgH.js +1 -0
- package/dist/assets/material-theme-palenight-DIL4EAzl.js +1 -0
- package/dist/assets/matlab-CBqMuw7w.js +1 -0
- package/dist/assets/mdc-BWMWBj66.js +1 -0
- package/dist/assets/mdx-BjoJxHxW.js +1 -0
- package/dist/assets/mermaid-DjAh2yR5.js +1 -0
- package/dist/assets/min-dark-CbwghdE5.js +1 -0
- package/dist/assets/min-light-_F39d_94.js +1 -0
- package/dist/assets/mipsasm-DA1H0O78.js +1 -0
- package/dist/assets/mojo-BVgjRjTn.js +1 -0
- package/dist/assets/monokai-CxgvaWkX.js +1 -0
- package/dist/assets/moonbit-tKY94ZOM.js +1 -0
- package/dist/assets/move-B5WspEjG.js +1 -0
- package/dist/assets/narrat-CDPRStf_.js +1 -0
- package/dist/assets/nextflow-D6ub5x6I.js +1 -0
- package/dist/assets/nextflow-groovy-DC2pAw1t.js +1 -0
- package/dist/assets/nginx-tinol6SS.js +1 -0
- package/dist/assets/night-owl-CCydx7ZR.js +1 -0
- package/dist/assets/night-owl-light-CLM7UUPY.js +1 -0
- package/dist/assets/nim-B62YiABd.js +1 -0
- package/dist/assets/nix-DXFN4IwW.js +1 -0
- package/dist/assets/node-C92mwFMz.js +4 -0
- package/dist/assets/nord-CiCWZ1de.js +1 -0
- package/dist/assets/nushell-Ck9o2qOx.js +1 -0
- package/dist/assets/objective-c-4koxci9E.js +1 -0
- package/dist/assets/objective-cpp-BPFAgSN9.js +1 -0
- package/dist/assets/ocaml-BdlBLhZV.js +1 -0
- package/dist/assets/odin-BcGOLCqZ.js +1 -0
- package/dist/assets/one-dark-pro-DEMdTgiO.js +1 -0
- package/dist/assets/one-light-Cmpe9X1u.js +1 -0
- package/dist/assets/openscad-DBveSHYE.js +1 -0
- package/dist/assets/pascal-DxOVE99u.js +1 -0
- package/dist/assets/perl-Di890ZVN.js +1 -0
- package/dist/assets/php-BE50NddE.js +1 -0
- package/dist/assets/pkl-pIvtf7Vu.js +1 -0
- package/dist/assets/plastic-Dvdf8qVN.js +1 -0
- package/dist/assets/plsql-d50MFTFK.js +1 -0
- package/dist/assets/po-CboxWwYg.js +1 -0
- package/dist/assets/poimandres-DHgQGH4M.js +1 -0
- package/dist/assets/polar-DNp7Oek8.js +1 -0
- package/dist/assets/postcss-LpmI6XQv.js +1 -0
- package/dist/assets/powerquery-BNCl8Uwz.js +1 -0
- package/dist/assets/powershell-CZ9J0XuS.js +1 -0
- package/dist/assets/prisma-AELUiJCl.js +1 -0
- package/dist/assets/prolog-BlqwejRD.js +1 -0
- package/dist/assets/proto-DRQC3swD.js +1 -0
- package/dist/assets/pug-DGP7PTk-.js +1 -0
- package/dist/assets/puppet-DBKR8MlH.js +1 -0
- package/dist/assets/purescript-DItLzxZS.js +1 -0
- package/dist/assets/python-D9t_ETu8.js +1 -0
- package/dist/assets/qml-BBpLsqsj.js +1 -0
- package/dist/assets/qmldir-DP_KD1nk.js +1 -0
- package/dist/assets/qss-CL02opOd.js +1 -0
- package/dist/assets/r-BL7rt_9D.js +1 -0
- package/dist/assets/racket-K0frLTWj.js +1 -0
- package/dist/assets/raku-DwgLlPg9.js +1 -0
- package/dist/assets/razor-CeWBotJS.js +1 -0
- package/dist/assets/red-DzDu-aXc.js +1 -0
- package/dist/assets/reg-B_y3c7di.js +1 -0
- package/dist/assets/regexp-Dd73s7V-.js +1 -0
- package/dist/assets/rel-CT65ywJp.js +1 -0
- package/dist/assets/riscv-Qv5W2vIg.js +1 -0
- package/dist/assets/ron-cRHu9zPp.js +1 -0
- package/dist/assets/rose-pine-DFmTJHIJ.js +1 -0
- package/dist/assets/rose-pine-dawn-YIuK9wUm.js +1 -0
- package/dist/assets/rose-pine-moon-BYEHfkUB.js +1 -0
- package/dist/assets/rosmsg-_L1z4wrx.js +1 -0
- package/dist/assets/rst-CKr96H10.js +1 -0
- package/dist/assets/ruby-B7TsannQ.js +1 -0
- package/dist/assets/runtime-Dva4yzBQ.js +1 -0
- package/dist/assets/rust-BA5wQ_EY.js +1 -0
- package/dist/assets/sas-C_sF_r8a.js +1 -0
- package/dist/assets/sass-sd__ov8V.js +1 -0
- package/dist/assets/scala--cVG4U7H.js +1 -0
- package/dist/assets/scheme-D6Q1O-kY.js +1 -0
- package/dist/assets/scss-B16LvjsL.js +1 -0
- package/dist/assets/sdbl-jB0DUrL_.js +1 -0
- package/dist/assets/shaderlab-uUHiM5Mm.js +1 -0
- package/dist/assets/shellscript-dnyLKRin.js +1 -0
- package/dist/assets/shellsession-DTlo_aKR.js +1 -0
- package/dist/assets/slack-dark-DHhAlQBa.js +1 -0
- package/dist/assets/slack-ochin-PZXbcZaN.js +1 -0
- package/dist/assets/smalltalk-C7VkdTlv.js +1 -0
- package/dist/assets/snazzy-light-CPc_Qts9.js +1 -0
- package/dist/assets/solarized-dark-DCCfKtTh.js +1 -0
- package/dist/assets/solarized-light-B84T-R9X.js +1 -0
- package/dist/assets/solidity-DVsDPpDS.js +1 -0
- package/dist/assets/soy-CYe5idz8.js +1 -0
- package/dist/assets/sparql-D5zsvcbT.js +1 -0
- package/dist/assets/splunk-A-BwP6Va.js +1 -0
- package/dist/assets/sql-D-E0nBNJ.js +1 -0
- package/dist/assets/ssh-config-CFPv6mTy.js +1 -0
- package/dist/assets/stata-uX6s6LU7.js +1 -0
- package/dist/assets/stylus-CUf3IESt.js +1 -0
- package/dist/assets/surrealql-GkyIuwxY.js +1 -0
- package/dist/assets/svelte-CfnJqTwW.js +1 -0
- package/dist/assets/swift-CSiiYB_Q.js +1 -0
- package/dist/assets/synthwave-84-uJp1j2Jd.js +1 -0
- package/dist/assets/system-verilog-rMjKy-O9.js +1 -0
- package/dist/assets/systemd-R-KDM4-t.js +1 -0
- package/dist/assets/talonscript-D666vCtm.js +1 -0
- package/dist/assets/tasl-68cbBocU.js +1 -0
- package/dist/assets/tcl-Y39dJ_pX.js +1 -0
- package/dist/assets/templ-D1EOUGk9.js +1 -0
- package/dist/assets/terraform-BF7wAo-b.js +1 -0
- package/dist/assets/tex-DJNezBXL.js +1 -0
- package/dist/assets/tokyo-night-EeABtN82.js +1 -0
- package/dist/assets/toml-BrMFN1JF.js +1 -0
- package/dist/assets/ts-tags-B6yMAMBr.js +1 -0
- package/dist/assets/tsv-Dp2l5v7f.js +1 -0
- package/dist/assets/tsx-BOLo_Ogf.js +1 -0
- package/dist/assets/turtle-_N1aDtpV.js +1 -0
- package/dist/assets/twig-BI3vVzh2.js +1 -0
- package/dist/assets/typescript-kRJFfHtG.js +1 -0
- package/dist/assets/typespec-b80CR7oU.js +1 -0
- package/dist/assets/typst-DP_izaNK.js +1 -0
- package/dist/assets/utils-52664384-CNFmSnPR.js +6 -0
- package/dist/assets/v-CdNC_Wok.js +1 -0
- package/dist/assets/vala-Bu4pYkLC.js +1 -0
- package/dist/assets/vb-u84IyWSS.js +1 -0
- package/dist/assets/verilog-BC33pi7Z.js +1 -0
- package/dist/assets/vesper-7-XtS0Kg.js +1 -0
- package/dist/assets/vhdl-BBxTOQe0.js +1 -0
- package/dist/assets/viml-X_r-ivXA.js +1 -0
- package/dist/assets/vitesse-black-DRdlY-cW.js +1 -0
- package/dist/assets/vitesse-dark-Bz0hOFHJ.js +1 -0
- package/dist/assets/vitesse-light-7kCLd0yn.js +1 -0
- package/dist/assets/vue-B2GeWsQX.js +1 -0
- package/dist/assets/vue-html-DIRaMPNP.js +1 -0
- package/dist/assets/vue-vine-CfdXDvVv.js +1 -0
- package/dist/assets/vyper-E7qIwMXy.js +1 -0
- package/dist/assets/wasm-C18OEcCL.js +1 -0
- package/dist/assets/wasm-CfqNvg3Z.js +1 -0
- package/dist/assets/wenyan-siXAC4el.js +1 -0
- package/dist/assets/wgsl-BJQt8Uld.js +1 -0
- package/dist/assets/wikitext-Ci0ePJmf.js +1 -0
- package/dist/assets/wit-BdDJ7geN.js +1 -0
- package/dist/assets/wolfram-Bi-O1IUM.js +1 -0
- package/dist/assets/xml-CFID48H0.js +1 -0
- package/dist/assets/xsl-BK4ngHMJ.js +1 -0
- package/dist/assets/yaml-D6lFkv0K.js +1 -0
- package/dist/assets/zenscript-CnkrxCBw.js +1 -0
- package/dist/assets/zig-CgMsxF9-.js +1 -0
- package/dist/index.html +22 -4
- package/dist/ui-cli.cjs +1 -1
- package/package.json +16 -14
- package/registry.json +189 -42
- package/scripts/build-cli.mjs +12 -12
- package/scripts/generate-theme-css.ts +74 -74
- package/scripts/ui-cli.ts +1 -1
- package/dist/assets/index-1YAQdTE0.css +0 -2
- package/dist/assets/index-BsQ6nn74.js +0 -237
- package/dist/ui-cli.js +0 -124
package/dist/ui-cli.js
DELETED
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
// scripts/ui-cli.ts
|
|
4
|
-
import fs from "fs";
|
|
5
|
-
import path from "path";
|
|
6
|
-
import { execSync } from "child_process";
|
|
7
|
-
var REGISTRY_LOCAL = "./registry.json";
|
|
8
|
-
var REGISTRY_REMOTE = "https://raw.githubusercontent.com/huy14032003/ui-component/main/registry.json";
|
|
9
|
-
var log = (msg) => console.log(`[BASE-CUS-UI] ${msg}`);
|
|
10
|
-
var error = (msg) => console.error(`[BASE-CUS-UI] ERROR: ${msg}`);
|
|
11
|
-
var getTargetProjectDir = () => process.cwd();
|
|
12
|
-
var getRegistry = async (isLocal) => {
|
|
13
|
-
if (isLocal && fs.existsSync(REGISTRY_LOCAL)) {
|
|
14
|
-
log("S\u1EED d\u1EE5ng Registry n\u1ED9i b\u1ED9...");
|
|
15
|
-
return JSON.parse(fs.readFileSync(REGISTRY_LOCAL, "utf-8"));
|
|
16
|
-
}
|
|
17
|
-
log("\u0110ang t\u1EA3i Registry t\u1EEB m\xE1y ch\u1EE7 t\u1EEB xa...");
|
|
18
|
-
try {
|
|
19
|
-
const response = await fetch(REGISTRY_REMOTE);
|
|
20
|
-
if (!response.ok) throw new Error(`HTTP error! status: ${response.status}`);
|
|
21
|
-
return await response.json();
|
|
22
|
-
} catch (err) {
|
|
23
|
-
if (isLocal) {
|
|
24
|
-
error(`Kh\xF4ng t\xECm th\u1EA5y registry.json n\u1ED9i b\u1ED9 v\xE0 kh\xF4ng th\u1EC3 t\u1EA3i t\u1EEB xa: ${err.message}`);
|
|
25
|
-
} else {
|
|
26
|
-
error(`Kh\xF4ng th\u1EC3 t\u1EA3i Registry t\u1EEB GitHub: ${err.message}. H\xE3y ki\u1EC3m tra k\u1EBFt n\u1ED1i m\u1EA1ng.`);
|
|
27
|
-
}
|
|
28
|
-
process.exit(1);
|
|
29
|
-
}
|
|
30
|
-
};
|
|
31
|
-
var installNpmPackages = (packages, cwd) => {
|
|
32
|
-
if (packages.length === 0) return;
|
|
33
|
-
const pkgJsonPath = path.join(cwd, "package.json");
|
|
34
|
-
let toInstall = packages;
|
|
35
|
-
if (fs.existsSync(pkgJsonPath)) {
|
|
36
|
-
const pkg = JSON.parse(fs.readFileSync(pkgJsonPath, "utf-8"));
|
|
37
|
-
const allDeps = { ...pkg.dependencies, ...pkg.devDependencies };
|
|
38
|
-
toInstall = packages.filter((p) => !allDeps[p]);
|
|
39
|
-
}
|
|
40
|
-
if (toInstall.length === 0) return;
|
|
41
|
-
log(`\u0110ang c\xE0i \u0111\u1EB7t c\xE1c g\xF3i npm: ${toInstall.join(", ")}...`);
|
|
42
|
-
try {
|
|
43
|
-
execSync(`npm install ${toInstall.join(" ")} --save`, { stdio: "inherit", cwd });
|
|
44
|
-
} catch (err) {
|
|
45
|
-
error("L\u1ED7i khi c\xE0i \u0111\u1EB7t c\xE1c g\xF3i npm.");
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
var ensureCore = (registry, cwd) => {
|
|
49
|
-
const core = registry.core;
|
|
50
|
-
if (!core) return;
|
|
51
|
-
installNpmPackages(core.dependencies, cwd);
|
|
52
|
-
core.files.forEach((file) => {
|
|
53
|
-
const targetPath = path.join(cwd, file.path);
|
|
54
|
-
const targetDir = path.dirname(targetPath);
|
|
55
|
-
if (!fs.existsSync(targetDir)) {
|
|
56
|
-
fs.mkdirSync(targetDir, { recursive: true });
|
|
57
|
-
}
|
|
58
|
-
if (!fs.existsSync(targetPath)) {
|
|
59
|
-
fs.writeFileSync(targetPath, file.content);
|
|
60
|
-
log(`\u0110\xE3 kh\u1EDFi t\u1EA1o file h\u1EC7 th\u1ED1ng: ${file.path}`);
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
};
|
|
64
|
-
var addComponent = (name, registry, cwd, added = /* @__PURE__ */ new Set()) => {
|
|
65
|
-
if (added.has(name)) return;
|
|
66
|
-
added.add(name);
|
|
67
|
-
const component = registry.components[name];
|
|
68
|
-
if (!component) {
|
|
69
|
-
error(`Component "${name}" kh\xF4ng t\u1ED3n t\u1EA1i trong danh s\xE1ch.`);
|
|
70
|
-
return;
|
|
71
|
-
}
|
|
72
|
-
log(`\u0110ang th\xEAm component: ${name}...`);
|
|
73
|
-
ensureCore(registry, cwd);
|
|
74
|
-
installNpmPackages(component.dependencies, cwd);
|
|
75
|
-
if (component.internalDependencies) {
|
|
76
|
-
component.internalDependencies.forEach((dep) => {
|
|
77
|
-
if (registry.components[dep]) {
|
|
78
|
-
addComponent(dep, registry, cwd, added);
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
component.files.forEach((file) => {
|
|
83
|
-
const targetPath = path.join(cwd, file.path);
|
|
84
|
-
const targetDir = path.dirname(targetPath);
|
|
85
|
-
if (!fs.existsSync(targetDir)) {
|
|
86
|
-
fs.mkdirSync(targetDir, { recursive: true });
|
|
87
|
-
}
|
|
88
|
-
if (fs.existsSync(targetPath)) {
|
|
89
|
-
return;
|
|
90
|
-
}
|
|
91
|
-
fs.writeFileSync(targetPath, file.content);
|
|
92
|
-
log(`\u0110\xE3 t\u1EA1o: ${file.path}`);
|
|
93
|
-
});
|
|
94
|
-
};
|
|
95
|
-
var main = async () => {
|
|
96
|
-
const args = process.argv.slice(2);
|
|
97
|
-
const isLocal = args.includes("--local");
|
|
98
|
-
const command = args.find((a) => !a.startsWith("--"));
|
|
99
|
-
const componentNames = args.filter((a) => a !== command && !a.startsWith("--"));
|
|
100
|
-
const cwd = getTargetProjectDir();
|
|
101
|
-
const registry = await getRegistry(isLocal);
|
|
102
|
-
if (command === "add") {
|
|
103
|
-
if (componentNames.length === 0) {
|
|
104
|
-
error("S\u1EED d\u1EE5ng: npx base-cus-ui add <t\xEAn-component>");
|
|
105
|
-
return;
|
|
106
|
-
}
|
|
107
|
-
for (const name of componentNames) {
|
|
108
|
-
addComponent(name, registry, cwd);
|
|
109
|
-
}
|
|
110
|
-
log("T\u1EA5t c\u1EA3 component \u0111\xE3 \u0111\u01B0\u1EE3c th\xEAm th\xE0nh c\xF4ng!");
|
|
111
|
-
} else if (command === "list") {
|
|
112
|
-
log("Danh s\xE1ch component c\xF3 s\u1EB5n:");
|
|
113
|
-
Object.keys(registry.components).forEach((k) => console.log(` - ${k}`));
|
|
114
|
-
} else if (command === "init") {
|
|
115
|
-
ensureCore(registry, cwd);
|
|
116
|
-
log("Kh\u1EDFi t\u1EA1o ho\xE0n t\u1EA5t.");
|
|
117
|
-
} else if (command === "tailwind") {
|
|
118
|
-
console.log("\n--- SAO CH\xC9P V\xC0O tailwind.config.ts / tailwind.config.js ---\n");
|
|
119
|
-
console.log("// Xem trong README_CLI.md \u0111\u1EC3 bi\u1EBFt chi ti\u1EBFt c\u1EA5u h\xECnh");
|
|
120
|
-
} else {
|
|
121
|
-
log("Ch\xE0o m\u1EEBng \u0111\u1EBFn v\u1EDBi BASE-CUS-UI. C\xE1c l\u1EC7nh h\u1ED7 tr\u1EE3: init, add, list, tailwind.");
|
|
122
|
-
}
|
|
123
|
-
};
|
|
124
|
-
main();
|