@blockspoon/cert-badge-renderer 1.0.23 → 1.0.25
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/dist/cjs/utils/getBindingValue.js +3 -1
- package/dist/esm/browser/index.js +7 -2
- package/dist/esm/constants/componentsDirection.js +5 -2
- package/dist/esm/index.js +5 -1
- package/dist/esm/interface/index.js +7 -4
- package/dist/esm/server/index.js +7 -2
- package/dist/esm/templates/badges/BadgeType1.js +4 -1
- package/dist/esm/templates/badges/BadgeType10.js +4 -1
- package/dist/esm/templates/badges/BadgeType100.js +4 -1
- package/dist/esm/templates/badges/BadgeType101.js +4 -1
- package/dist/esm/templates/badges/BadgeType102.js +4 -1
- package/dist/esm/templates/badges/BadgeType103.js +4 -1
- package/dist/esm/templates/badges/BadgeType104.js +4 -1
- package/dist/esm/templates/badges/BadgeType105.js +4 -1
- package/dist/esm/templates/badges/BadgeType106.js +4 -1
- package/dist/esm/templates/badges/BadgeType107.js +4 -1
- package/dist/esm/templates/badges/BadgeType108.js +4 -1
- package/dist/esm/templates/badges/BadgeType109.js +4 -1
- package/dist/esm/templates/badges/BadgeType11.js +4 -1
- package/dist/esm/templates/badges/BadgeType110.js +4 -1
- package/dist/esm/templates/badges/BadgeType111.js +4 -1
- package/dist/esm/templates/badges/BadgeType112.js +4 -1
- package/dist/esm/templates/badges/BadgeType113.js +4 -1
- package/dist/esm/templates/badges/BadgeType114.js +4 -1
- package/dist/esm/templates/badges/BadgeType115.js +4 -1
- package/dist/esm/templates/badges/BadgeType116.js +4 -1
- package/dist/esm/templates/badges/BadgeType117.js +4 -1
- package/dist/esm/templates/badges/BadgeType118.js +4 -1
- package/dist/esm/templates/badges/BadgeType119.js +4 -1
- package/dist/esm/templates/badges/BadgeType12.js +4 -1
- package/dist/esm/templates/badges/BadgeType120.js +4 -1
- package/dist/esm/templates/badges/BadgeType121.js +4 -1
- package/dist/esm/templates/badges/BadgeType13.js +4 -1
- package/dist/esm/templates/badges/BadgeType14.js +4 -1
- package/dist/esm/templates/badges/BadgeType15.js +4 -1
- package/dist/esm/templates/badges/BadgeType16.js +4 -1
- package/dist/esm/templates/badges/BadgeType17.js +4 -1
- package/dist/esm/templates/badges/BadgeType18.js +4 -1
- package/dist/esm/templates/badges/BadgeType19.js +4 -1
- package/dist/esm/templates/badges/BadgeType2.js +4 -1
- package/dist/esm/templates/badges/BadgeType20.js +4 -1
- package/dist/esm/templates/badges/BadgeType21.js +4 -1
- package/dist/esm/templates/badges/BadgeType22.js +4 -1
- package/dist/esm/templates/badges/BadgeType23.js +4 -1
- package/dist/esm/templates/badges/BadgeType24.js +4 -1
- package/dist/esm/templates/badges/BadgeType25.js +4 -1
- package/dist/esm/templates/badges/BadgeType26.js +4 -1
- package/dist/esm/templates/badges/BadgeType27.js +4 -1
- package/dist/esm/templates/badges/BadgeType28.js +4 -1
- package/dist/esm/templates/badges/BadgeType29.js +4 -1
- package/dist/esm/templates/badges/BadgeType3.js +4 -1
- package/dist/esm/templates/badges/BadgeType30.js +4 -1
- package/dist/esm/templates/badges/BadgeType31.js +4 -1
- package/dist/esm/templates/badges/BadgeType32.js +4 -1
- package/dist/esm/templates/badges/BadgeType33.js +4 -1
- package/dist/esm/templates/badges/BadgeType34.js +4 -1
- package/dist/esm/templates/badges/BadgeType35.js +4 -1
- package/dist/esm/templates/badges/BadgeType36.js +4 -1
- package/dist/esm/templates/badges/BadgeType37.js +4 -1
- package/dist/esm/templates/badges/BadgeType38.js +4 -1
- package/dist/esm/templates/badges/BadgeType39.js +4 -1
- package/dist/esm/templates/badges/BadgeType4.js +4 -1
- package/dist/esm/templates/badges/BadgeType40.js +4 -1
- package/dist/esm/templates/badges/BadgeType41.js +4 -1
- package/dist/esm/templates/badges/BadgeType42.js +4 -1
- package/dist/esm/templates/badges/BadgeType43.js +4 -1
- package/dist/esm/templates/badges/BadgeType44.js +4 -1
- package/dist/esm/templates/badges/BadgeType45.js +4 -1
- package/dist/esm/templates/badges/BadgeType46.js +4 -1
- package/dist/esm/templates/badges/BadgeType47.js +4 -1
- package/dist/esm/templates/badges/BadgeType48.js +4 -1
- package/dist/esm/templates/badges/BadgeType49.js +4 -1
- package/dist/esm/templates/badges/BadgeType5.js +4 -1
- package/dist/esm/templates/badges/BadgeType50.js +4 -1
- package/dist/esm/templates/badges/BadgeType51.js +4 -1
- package/dist/esm/templates/badges/BadgeType52.js +4 -1
- package/dist/esm/templates/badges/BadgeType53.js +4 -1
- package/dist/esm/templates/badges/BadgeType54.js +4 -1
- package/dist/esm/templates/badges/BadgeType55.js +4 -1
- package/dist/esm/templates/badges/BadgeType56.js +4 -1
- package/dist/esm/templates/badges/BadgeType57.js +4 -1
- package/dist/esm/templates/badges/BadgeType58.js +4 -1
- package/dist/esm/templates/badges/BadgeType59.js +4 -1
- package/dist/esm/templates/badges/BadgeType6.js +4 -1
- package/dist/esm/templates/badges/BadgeType60.js +4 -1
- package/dist/esm/templates/badges/BadgeType61.js +4 -1
- package/dist/esm/templates/badges/BadgeType62.js +4 -1
- package/dist/esm/templates/badges/BadgeType63.js +4 -1
- package/dist/esm/templates/badges/BadgeType64.js +4 -1
- package/dist/esm/templates/badges/BadgeType65.js +4 -1
- package/dist/esm/templates/badges/BadgeType66.js +4 -1
- package/dist/esm/templates/badges/BadgeType67.js +4 -1
- package/dist/esm/templates/badges/BadgeType68.js +4 -1
- package/dist/esm/templates/badges/BadgeType69.js +4 -1
- package/dist/esm/templates/badges/BadgeType7.js +4 -1
- package/dist/esm/templates/badges/BadgeType70.js +4 -1
- package/dist/esm/templates/badges/BadgeType71.js +4 -1
- package/dist/esm/templates/badges/BadgeType72.js +4 -1
- package/dist/esm/templates/badges/BadgeType73.js +4 -1
- package/dist/esm/templates/badges/BadgeType74.js +4 -1
- package/dist/esm/templates/badges/BadgeType75.js +4 -1
- package/dist/esm/templates/badges/BadgeType76.js +4 -1
- package/dist/esm/templates/badges/BadgeType77.js +4 -1
- package/dist/esm/templates/badges/BadgeType78.js +4 -1
- package/dist/esm/templates/badges/BadgeType79.js +4 -1
- package/dist/esm/templates/badges/BadgeType8.js +4 -1
- package/dist/esm/templates/badges/BadgeType80.js +4 -1
- package/dist/esm/templates/badges/BadgeType81.js +4 -1
- package/dist/esm/templates/badges/BadgeType82.js +4 -1
- package/dist/esm/templates/badges/BadgeType83.js +4 -1
- package/dist/esm/templates/badges/BadgeType84.js +4 -1
- package/dist/esm/templates/badges/BadgeType85.js +4 -1
- package/dist/esm/templates/badges/BadgeType86.js +4 -1
- package/dist/esm/templates/badges/BadgeType87.js +4 -1
- package/dist/esm/templates/badges/BadgeType88.js +4 -1
- package/dist/esm/templates/badges/BadgeType89.js +4 -1
- package/dist/esm/templates/badges/BadgeType9.js +4 -1
- package/dist/esm/templates/badges/BadgeType90.js +4 -1
- package/dist/esm/templates/badges/BadgeType91.js +4 -1
- package/dist/esm/templates/badges/BadgeType92.js +4 -1
- package/dist/esm/templates/badges/BadgeType93.js +4 -1
- package/dist/esm/templates/badges/BadgeType94.js +4 -1
- package/dist/esm/templates/badges/BadgeType95.js +4 -1
- package/dist/esm/templates/badges/BadgeType96.js +4 -1
- package/dist/esm/templates/badges/BadgeType97.js +4 -1
- package/dist/esm/templates/badges/BadgeType98.js +4 -1
- package/dist/esm/templates/badges/BadgeType99.js +4 -1
- package/dist/esm/templates/badges/index.js +245 -243
- package/dist/esm/templates/certificates/NewCertificateType1.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType10.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType11.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType12.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType13.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType14.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType15.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType16.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType17.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType18.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType19.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType2.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType20.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType21.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType22.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType23.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType24.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType25.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType26.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType27.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType28.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType29.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType3.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType30.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType31.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType32.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType33.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType34.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType35.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType36.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType37.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType38.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType39.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType4.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType40.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType41.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType42.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType43.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType44.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType45.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType46.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType47.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType48.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType49.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType5.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType50.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType51.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType52.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType53.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType54.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType55.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType56.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType57.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType58.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType59.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType6.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType60.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType61.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType62.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType63.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType64.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType65.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType66.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType67.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType68.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType69.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType6Single.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType7.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType70.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType71.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType72.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType73.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType74.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType75.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType76.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType77.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType78.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType79.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType7Single.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType8.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType80.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType81.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType82.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType83.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType84.js +4 -1
- package/dist/esm/templates/certificates/NewCertificateType9.js +4 -1
- package/dist/esm/templates/certificates/NewEmptyLandscapeCertificate.js +4 -1
- package/dist/esm/templates/certificates/NewEmptyPortraitCertificate.js +4 -1
- package/dist/esm/templates/certificates/index.js +179 -177
- package/dist/esm/templates/icons/IconBg1.js +4 -1
- package/dist/esm/templates/icons/IconBg2.js +4 -1
- package/dist/esm/templates/icons/IconBg3.js +4 -1
- package/dist/esm/templates/icons/IconBg4.js +4 -1
- package/dist/esm/templates/icons/IconBg5.js +4 -1
- package/dist/esm/templates/icons/IconBg6.js +4 -1
- package/dist/esm/templates/icons/IconBg7.js +4 -1
- package/dist/esm/templates/icons/IconBg8.js +4 -1
- package/dist/esm/templates/icons/IconBg9.js +4 -1
- package/dist/esm/templates/icons/IconEtc1.js +4 -1
- package/dist/esm/templates/icons/IconEtc2.js +4 -1
- package/dist/esm/templates/icons/IconEtc3.js +4 -1
- package/dist/esm/templates/icons/IconMedal.js +4 -1
- package/dist/esm/templates/icons/IconMortarboard1.js +4 -1
- package/dist/esm/templates/icons/IconMortarboard2.js +4 -1
- package/dist/esm/templates/icons/IconMortarboard3.js +4 -1
- package/dist/esm/templates/icons/IconMortarboard4.js +4 -1
- package/dist/esm/templates/icons/IconMortarboard5.js +4 -1
- package/dist/esm/templates/icons/IconSmallType1.js +4 -1
- package/dist/esm/templates/icons/IconSmallType10.js +4 -1
- package/dist/esm/templates/icons/IconStar.js +4 -1
- package/dist/esm/templates/icons/IconStar2.js +4 -1
- package/dist/esm/templates/icons/IconStar3.js +4 -1
- package/dist/esm/templates/icons/IconStar4.js +4 -1
- package/dist/esm/templates/icons/IconStar5.js +4 -1
- package/dist/esm/templates/icons/IconStar6.js +4 -1
- package/dist/esm/templates/icons/IconStar7.js +4 -1
- package/dist/esm/templates/icons/IconStar8.js +4 -1
- package/dist/esm/templates/icons/IconTrophy1.js +4 -1
- package/dist/esm/templates/icons/IconTrophy2.js +4 -1
- package/dist/esm/templates/icons/IconTrophy3.js +4 -1
- package/dist/esm/templates/icons/IconTrophy4.js +4 -1
- package/dist/esm/templates/icons/index.js +67 -65
- package/dist/esm/templates/ribbons/RibbonType1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType101.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType101_1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType103.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType107.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType109.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType110.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType113.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType115.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType116.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType116_1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType118.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType12.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType13.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType13_1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType18.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType18_1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType19.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType19_1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType2.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType21.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType22.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType23.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType23_1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType24.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType24_1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType26.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType27.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType27_1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType34.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType35.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType35_1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType4.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType45.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType46.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType5.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType53.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType57.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType6.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType61.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType7.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType7_1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType8.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType92.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType93.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType93_1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType96.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType96_1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType97.js +4 -1
- package/dist/esm/templates/ribbons/RibbonType99.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing1.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing10.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing104.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing105.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing106.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing11.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing12.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing14.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing15.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing16.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing17.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing2.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing3.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing4.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing5.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing6.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing7.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing8.js +4 -1
- package/dist/esm/templates/ribbons/RibbonWing9.js +4 -1
- package/dist/esm/templates/ribbons/index.js +135 -133
- package/dist/esm/templates/svgTemplate.js +232 -226
- package/dist/esm/util.js +4 -1
- package/dist/esm/utils/generateAchievementHTML.js +22 -16
- package/dist/esm/utils/generateDesignHTML.js +22 -16
- package/dist/esm/utils/getBindingValue.js +15 -9
- package/package.json +1 -2
- package/src/utils/getBindingValue.ts +5 -1
package/dist/esm/util.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.groupByType = groupByType;
|
|
1
4
|
// 이미지 배열 객체화
|
|
2
|
-
|
|
5
|
+
function groupByType(arrays) {
|
|
3
6
|
// 타입 정의
|
|
4
7
|
if (!arrays || !Array.isArray(arrays) || arrays.length === 0)
|
|
5
8
|
return {};
|
|
@@ -1,10 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.generateAchievementHTML = generateAchievementHTML;
|
|
7
|
+
const index_js_1 = require("../interface/index.js");
|
|
8
|
+
const getBindingValue_js_1 = require("./getBindingValue.js");
|
|
9
|
+
const qrcode_1 = __importDefault(require("qrcode"));
|
|
10
|
+
const svgTemplate_js_1 = require("../templates/svgTemplate.js");
|
|
11
|
+
const index_js_2 = __importDefault(require("../templates/certificates/index.js"));
|
|
12
|
+
const componentsDirection_js_1 = require("../constants/componentsDirection.js");
|
|
13
|
+
async function generateAchievementHTML(achievementInfo, options = {}) {
|
|
8
14
|
const { type = "certificate", size = 600, noSpace = false } = options;
|
|
9
15
|
let achievementForm;
|
|
10
16
|
if (achievementInfo.achievementForm) {
|
|
@@ -27,7 +33,7 @@ export async function generateAchievementHTML(achievementInfo, options = {}) {
|
|
|
27
33
|
function isHorizontal(name) {
|
|
28
34
|
if (!name)
|
|
29
35
|
return false;
|
|
30
|
-
return !portraitComponents.includes(name);
|
|
36
|
+
return !componentsDirection_js_1.portraitComponents.includes(name);
|
|
31
37
|
}
|
|
32
38
|
const templateComponentName = achievementForm?.achievementCertificateDesign?.template_type;
|
|
33
39
|
const height = type == "badge" ? 600 : isHorizontal(templateComponentName) ? 810 : 1152;
|
|
@@ -83,7 +89,7 @@ export async function generateAchievementHTML(achievementInfo, options = {}) {
|
|
|
83
89
|
">
|
|
84
90
|
`;
|
|
85
91
|
if (type == "certificate") {
|
|
86
|
-
html +=
|
|
92
|
+
html += index_js_2.default[achievementForm?.achievementCertificateDesign?.template_type]({
|
|
87
93
|
mainColor: achievementForm?.achievementCertificateDesign?.main_color || "#000000",
|
|
88
94
|
subColor: achievementForm?.achievementCertificateDesign?.sub_color || "#000000",
|
|
89
95
|
extraColor1: achievementForm?.achievementCertificateDesign?.extra_color_1 ||
|
|
@@ -96,8 +102,8 @@ export async function generateAchievementHTML(achievementInfo, options = {}) {
|
|
|
96
102
|
if (element.bindingKey === "requirements")
|
|
97
103
|
continue;
|
|
98
104
|
let bindingValue = null;
|
|
99
|
-
if (element.designType === CERTIFICATE_DESIGN_TYPE.PROPS) {
|
|
100
|
-
bindingValue = getBindingValue(element.type, element.bindingKey, achievementInfo);
|
|
105
|
+
if (element.designType === index_js_1.CERTIFICATE_DESIGN_TYPE.PROPS) {
|
|
106
|
+
bindingValue = (0, getBindingValue_js_1.getBindingValue)(element.type, element.bindingKey, achievementInfo);
|
|
101
107
|
if (element.controlType === "text") {
|
|
102
108
|
element.text = bindingValue;
|
|
103
109
|
}
|
|
@@ -106,7 +112,7 @@ export async function generateAchievementHTML(achievementInfo, options = {}) {
|
|
|
106
112
|
}
|
|
107
113
|
}
|
|
108
114
|
if (bindingValue === null &&
|
|
109
|
-
element.designType === CERTIFICATE_DESIGN_TYPE.PROPS)
|
|
115
|
+
element.designType === index_js_1.CERTIFICATE_DESIGN_TYPE.PROPS)
|
|
110
116
|
continue;
|
|
111
117
|
const commonStyles = `
|
|
112
118
|
position: absolute;
|
|
@@ -138,10 +144,10 @@ export async function generateAchievementHTML(achievementInfo, options = {}) {
|
|
|
138
144
|
`;
|
|
139
145
|
if (element.controlType === "svg") {
|
|
140
146
|
const templates = element.designType === "badge"
|
|
141
|
-
? badgeTemplates
|
|
147
|
+
? svgTemplate_js_1.badgeTemplates
|
|
142
148
|
: element.designType === "icon"
|
|
143
|
-
? iconTemplates
|
|
144
|
-
: ribbonTemplates;
|
|
149
|
+
? svgTemplate_js_1.iconTemplates
|
|
150
|
+
: svgTemplate_js_1.ribbonTemplates;
|
|
145
151
|
const template = templates.find((t) => t.id === element.componentName);
|
|
146
152
|
if (template) {
|
|
147
153
|
const optimizedStyles = `
|
|
@@ -206,7 +212,7 @@ export async function generateAchievementHTML(achievementInfo, options = {}) {
|
|
|
206
212
|
else if (element.bindingKey === "qr_code" && element.src) {
|
|
207
213
|
// QR 코드
|
|
208
214
|
try {
|
|
209
|
-
const qrCodeSvg = await
|
|
215
|
+
const qrCodeSvg = await qrcode_1.default.toString(element.src, {
|
|
210
216
|
type: "svg",
|
|
211
217
|
width: element.width,
|
|
212
218
|
height: element.height,
|
|
@@ -1,10 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.generateDesignHTML = generateDesignHTML;
|
|
7
|
+
const index_js_1 = require("../interface/index.js");
|
|
8
|
+
const getBindingValue_js_1 = require("./getBindingValue.js");
|
|
9
|
+
const qrcode_1 = __importDefault(require("qrcode"));
|
|
10
|
+
const svgTemplate_js_1 = require("../templates/svgTemplate.js");
|
|
11
|
+
const index_js_2 = __importDefault(require("../templates/certificates/index.js"));
|
|
12
|
+
const componentsDirection_js_1 = require("../constants/componentsDirection.js");
|
|
13
|
+
async function generateDesignHTML(data, options = {}) {
|
|
8
14
|
const { size = 600, noSpace = false } = options;
|
|
9
15
|
// type에 따라 적절한 layout_json 선택
|
|
10
16
|
const elements = data.layout_json;
|
|
@@ -16,7 +22,7 @@ export async function generateDesignHTML(data, options = {}) {
|
|
|
16
22
|
function isHorizontal(name) {
|
|
17
23
|
if (!name)
|
|
18
24
|
return false;
|
|
19
|
-
return !portraitComponents.includes(name);
|
|
25
|
+
return !componentsDirection_js_1.portraitComponents.includes(name);
|
|
20
26
|
}
|
|
21
27
|
const templateComponentName = data?.template_type;
|
|
22
28
|
const isBadge = data?.template_type.includes("Badge");
|
|
@@ -81,7 +87,7 @@ export async function generateDesignHTML(data, options = {}) {
|
|
|
81
87
|
">
|
|
82
88
|
`;
|
|
83
89
|
if (!isBadge) {
|
|
84
|
-
html +=
|
|
90
|
+
html += index_js_2.default[data?.template_type]({
|
|
85
91
|
mainColor: data?.main_color || "#000000",
|
|
86
92
|
subColor: data?.sub_color || "#000000",
|
|
87
93
|
extraColor1: data?.extra_color_1 || "#000000",
|
|
@@ -92,8 +98,8 @@ export async function generateDesignHTML(data, options = {}) {
|
|
|
92
98
|
if (element.bindingKey === "requirements")
|
|
93
99
|
continue;
|
|
94
100
|
let bindingValue = null;
|
|
95
|
-
if (element.designType === CERTIFICATE_DESIGN_TYPE.PROPS) {
|
|
96
|
-
bindingValue = getBindingValue(element.type, element.bindingKey, data);
|
|
101
|
+
if (element.designType === index_js_1.CERTIFICATE_DESIGN_TYPE.PROPS) {
|
|
102
|
+
bindingValue = (0, getBindingValue_js_1.getBindingValue)(element.type, element.bindingKey, data);
|
|
97
103
|
if (element.controlType === "text") {
|
|
98
104
|
element.text = bindingValue;
|
|
99
105
|
}
|
|
@@ -105,7 +111,7 @@ export async function generateDesignHTML(data, options = {}) {
|
|
|
105
111
|
}
|
|
106
112
|
}
|
|
107
113
|
if (bindingValue === null &&
|
|
108
|
-
element.designType === CERTIFICATE_DESIGN_TYPE.PROPS)
|
|
114
|
+
element.designType === index_js_1.CERTIFICATE_DESIGN_TYPE.PROPS)
|
|
109
115
|
continue;
|
|
110
116
|
const commonStyles = `
|
|
111
117
|
position: absolute;
|
|
@@ -137,10 +143,10 @@ export async function generateDesignHTML(data, options = {}) {
|
|
|
137
143
|
`;
|
|
138
144
|
if (element.controlType === "svg") {
|
|
139
145
|
const templates = element.designType === "badge"
|
|
140
|
-
? badgeTemplates
|
|
146
|
+
? svgTemplate_js_1.badgeTemplates
|
|
141
147
|
: element.designType === "icon"
|
|
142
|
-
? iconTemplates
|
|
143
|
-
: ribbonTemplates;
|
|
148
|
+
? svgTemplate_js_1.iconTemplates
|
|
149
|
+
: svgTemplate_js_1.ribbonTemplates;
|
|
144
150
|
const template = templates.find((t) => t.id === element.componentName);
|
|
145
151
|
if (template) {
|
|
146
152
|
const optimizedStyles = `
|
|
@@ -186,7 +192,7 @@ export async function generateDesignHTML(data, options = {}) {
|
|
|
186
192
|
if (element.bindingKey === "qr_code" && element.src) {
|
|
187
193
|
// QR 코드
|
|
188
194
|
try {
|
|
189
|
-
const qrCodeSvg = await
|
|
195
|
+
const qrCodeSvg = await qrcode_1.default.toString(element.src, {
|
|
190
196
|
type: "svg",
|
|
191
197
|
width: element.width,
|
|
192
198
|
height: element.height,
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getBindingValue = void 0;
|
|
4
|
+
const date_fns_1 = require("date-fns");
|
|
5
|
+
const util_js_1 = require("../util.js");
|
|
3
6
|
// 데이터 타입별 헬퍼 함수
|
|
4
7
|
const getAchievementValue = (bindingKey, achievementInfo) => {
|
|
5
8
|
if (!achievementInfo)
|
|
@@ -8,10 +11,10 @@ const getAchievementValue = (bindingKey, achievementInfo) => {
|
|
|
8
11
|
switch (bindingKey) {
|
|
9
12
|
case "period":
|
|
10
13
|
return achievementInfo.course_begin_at && achievementInfo.course_end_at
|
|
11
|
-
? `${format(new Date(achievementInfo.course_begin_at), "yyyy.MM.dd")} ~ ${format(new Date(achievementInfo.course_end_at), "yyyy.MM.dd")}`
|
|
14
|
+
? `${(0, date_fns_1.format)(new Date(achievementInfo.course_begin_at), "yyyy.MM.dd")} ~ ${(0, date_fns_1.format)(new Date(achievementInfo.course_end_at), "yyyy.MM.dd")}`
|
|
12
15
|
: "-";
|
|
13
16
|
case "created_at":
|
|
14
|
-
return format(new Date(achievementInfo.created_at), "yyyy.MM.dd");
|
|
17
|
+
return (0, date_fns_1.format)(new Date(achievementInfo.created_at), "yyyy.MM.dd");
|
|
15
18
|
case "certificate_number":
|
|
16
19
|
return achievementInfo.certificate_number || "";
|
|
17
20
|
case "tags":
|
|
@@ -23,7 +26,9 @@ const getAchievementValue = (bindingKey, achievementInfo) => {
|
|
|
23
26
|
case "expiration_date":
|
|
24
27
|
return achievementInfo.expiration_date || "";
|
|
25
28
|
default:
|
|
26
|
-
return achievementInfo.achievementForm?.[bindingKey] ||
|
|
29
|
+
return (achievementInfo.achievementForm?.[bindingKey] ||
|
|
30
|
+
achievementInfo?.[bindingKey] ||
|
|
31
|
+
null);
|
|
27
32
|
}
|
|
28
33
|
};
|
|
29
34
|
const getUserValue = (bindingKey, user) => {
|
|
@@ -51,16 +56,16 @@ const getClubValue = (bindingKey, kollegeInfo, achievementInfo) => {
|
|
|
51
56
|
? "sign_image"
|
|
52
57
|
: "club_symbol";
|
|
53
58
|
return achievementForm.clubInstitutions?.[index]?.images
|
|
54
|
-
? groupByType(achievementForm.clubInstitutions[index].images)[imageKey]?.[0]?.path
|
|
59
|
+
? (0, util_js_1.groupByType)(achievementForm.clubInstitutions[index].images)[imageKey]?.[0]?.path
|
|
55
60
|
: null;
|
|
56
61
|
}
|
|
57
62
|
if (["club_logo", "sign_image", "club_symbol"].includes(bindingKey)) {
|
|
58
63
|
if (achievementForm.representativeInstitution) {
|
|
59
|
-
const groupByTypeImages = groupByType(achievementForm.representativeInstitution.images);
|
|
64
|
+
const groupByTypeImages = (0, util_js_1.groupByType)(achievementForm.representativeInstitution.images);
|
|
60
65
|
return (groupByTypeImages[bindingKey]?.[0]
|
|
61
66
|
?.path || null);
|
|
62
67
|
}
|
|
63
|
-
const groupByTypeImages = groupByType(kollegeInfo.images);
|
|
68
|
+
const groupByTypeImages = (0, util_js_1.groupByType)(kollegeInfo.images);
|
|
64
69
|
return (groupByTypeImages[bindingKey]?.[0]
|
|
65
70
|
?.path || null);
|
|
66
71
|
}
|
|
@@ -75,7 +80,7 @@ const getCustomValue = (bindingKey, achievementInfo) => {
|
|
|
75
80
|
return (achievementInfo.customAttributes.find((attr) => [`custom_${attr.attribute_tag}`, `custom-${attr.attribute_tag}`].includes(bindingKey))?.attribute_value || null);
|
|
76
81
|
};
|
|
77
82
|
// 🔥 메인 함수: 데이터 타입별로 자동 호출하도록 변경!
|
|
78
|
-
|
|
83
|
+
const getBindingValue = (type, bindingKey, data) => {
|
|
79
84
|
switch (type) {
|
|
80
85
|
case "achievement":
|
|
81
86
|
return getAchievementValue(bindingKey, data);
|
|
@@ -89,3 +94,4 @@ export const getBindingValue = (type, bindingKey, data) => {
|
|
|
89
94
|
return null;
|
|
90
95
|
}
|
|
91
96
|
};
|
|
97
|
+
exports.getBindingValue = getBindingValue;
|
package/package.json
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blockspoon/cert-badge-renderer",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.25",
|
|
4
4
|
"description": "Render certificate and badge designs from Kolleges achievement data into HTML, PNG, or Base64.",
|
|
5
|
-
"type": "module",
|
|
6
5
|
"main": "./dist/esm/index.js",
|
|
7
6
|
"exports": {
|
|
8
7
|
".": {
|
|
@@ -41,7 +41,11 @@ const getAchievementValue = (
|
|
|
41
41
|
return achievementInfo.expiration_date || "";
|
|
42
42
|
|
|
43
43
|
default:
|
|
44
|
-
return (
|
|
44
|
+
return (
|
|
45
|
+
(achievementInfo.achievementForm as any)?.[bindingKey] ||
|
|
46
|
+
achievementInfo?.[bindingKey] ||
|
|
47
|
+
null
|
|
48
|
+
);
|
|
45
49
|
}
|
|
46
50
|
};
|
|
47
51
|
|