@nice2dev/icons 1.4.2 → 1.4.4

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 (90) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/dist/cjs/NiceIconStacker.js +36 -2
  3. package/dist/cjs/createIcon.js +25 -6
  4. package/dist/cjs/iconParts.js +33 -12
  5. package/dist/cjs/iconValue.js +6 -1
  6. package/dist/cjs/icons/actions.js +86 -122
  7. package/dist/cjs/icons/ai.js +0 -178
  8. package/dist/cjs/icons/business.js +172 -120
  9. package/dist/cjs/icons/ecommerce.js +18 -74
  10. package/dist/cjs/icons/education.js +235 -487
  11. package/dist/cjs/icons/files.js +193 -461
  12. package/dist/cjs/icons/fintech.js +38 -74
  13. package/dist/cjs/icons/food.js +117 -194
  14. package/dist/cjs/icons/fun.js +176 -57
  15. package/dist/cjs/icons/gaming.js +2 -2
  16. package/dist/cjs/icons/health.js +1 -1
  17. package/dist/cjs/icons/index.js +32 -10
  18. package/dist/cjs/icons/legal.js +1 -109
  19. package/dist/cjs/icons/media.js +67 -8
  20. package/dist/cjs/icons/navigation.js +4 -4
  21. package/dist/cjs/icons/omniverk.js +14 -6
  22. package/dist/cjs/icons/realestate.js +99 -98
  23. package/dist/cjs/icons/roman.js +111 -0
  24. package/dist/cjs/icons/science.js +74 -165
  25. package/dist/cjs/icons/shapes.js +58 -39
  26. package/dist/cjs/icons/smarthome.js +18 -16
  27. package/dist/cjs/icons/social.js +22 -20
  28. package/dist/cjs/icons/sports.js +89 -159
  29. package/dist/cjs/icons/sustainability.js +26 -48
  30. package/dist/cjs/icons/travel.js +209 -477
  31. package/dist/cjs/icons/ui.js +140 -240
  32. package/dist/cjs/icons/weather.js +30 -56
  33. package/dist/cjs/index.js +67 -43
  34. package/dist/cjs/stackedIcon.js +19 -0
  35. package/dist/cjs/stacking.js +104 -2
  36. package/dist/esm/NiceIconStacker.js +37 -3
  37. package/dist/esm/createIcon.js +27 -8
  38. package/dist/esm/iconParts.js +33 -12
  39. package/dist/esm/iconValue.js +6 -1
  40. package/dist/esm/icons/actions.js +86 -122
  41. package/dist/esm/icons/ai.js +0 -178
  42. package/dist/esm/icons/business.js +172 -120
  43. package/dist/esm/icons/ecommerce.js +18 -74
  44. package/dist/esm/icons/education.js +236 -488
  45. package/dist/esm/icons/files.js +193 -461
  46. package/dist/esm/icons/fintech.js +38 -74
  47. package/dist/esm/icons/food.js +118 -195
  48. package/dist/esm/icons/fun.js +179 -60
  49. package/dist/esm/icons/gaming.js +2 -2
  50. package/dist/esm/icons/health.js +1 -1
  51. package/dist/esm/icons/index.js +43 -21
  52. package/dist/esm/icons/legal.js +1 -109
  53. package/dist/esm/icons/media.js +67 -8
  54. package/dist/esm/icons/navigation.js +4 -4
  55. package/dist/esm/icons/omniverk.js +15 -7
  56. package/dist/esm/icons/realestate.js +100 -99
  57. package/dist/esm/icons/roman.js +111 -0
  58. package/dist/esm/icons/science.js +74 -165
  59. package/dist/esm/icons/shapes.js +58 -39
  60. package/dist/esm/icons/smarthome.js +18 -16
  61. package/dist/esm/icons/social.js +22 -20
  62. package/dist/esm/icons/sports.js +89 -159
  63. package/dist/esm/icons/sustainability.js +26 -48
  64. package/dist/esm/icons/travel.js +209 -477
  65. package/dist/esm/icons/ui.js +140 -240
  66. package/dist/esm/icons/weather.js +30 -56
  67. package/dist/esm/index.js +45 -21
  68. package/dist/esm/nicetodev-icons.css +1 -1
  69. package/dist/esm/stackedIcon.js +19 -0
  70. package/dist/esm/stacking.js +105 -3
  71. package/dist/types/createIcon.d.ts +14 -1
  72. package/dist/types/iconParts.d.ts +9 -6
  73. package/dist/types/icons/ai.d.ts +0 -4
  74. package/dist/types/icons/business.d.ts +1 -0
  75. package/dist/types/icons/education.d.ts +2 -4
  76. package/dist/types/icons/files.d.ts +3 -1
  77. package/dist/types/icons/fintech.d.ts +1 -1
  78. package/dist/types/icons/fun.d.ts +23 -0
  79. package/dist/types/icons/index.d.ts +14 -12
  80. package/dist/types/icons/legal.d.ts +0 -2
  81. package/dist/types/icons/media.d.ts +1 -0
  82. package/dist/types/icons/realestate.d.ts +17 -1
  83. package/dist/types/icons/roman.d.ts +76 -0
  84. package/dist/types/icons/science.d.ts +0 -2
  85. package/dist/types/icons/ui.d.ts +6 -1
  86. package/dist/types/index.d.ts +2 -1
  87. package/dist/types/stackedIcon.d.ts +11 -0
  88. package/dist/types/stacking.d.ts +48 -1
  89. package/dist/types/types.d.ts +17 -2
  90. package/package.json +2 -2
@@ -69,96 +69,6 @@ const NtdGraduationCap = /* @__PURE__ */ createIcon.createIcon({
69
69
  ] })
70
70
  }
71
71
  });
72
- const NtdDiploma = /* @__PURE__ */ createIcon.createIcon({
73
- displayName: "NtdDiploma",
74
- paths: {
75
- solid: ({ primaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
76
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "3", y: "4", width: "18", height: "14", rx: "2", fill: primaryColor }),
77
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M7 8h10M7 11h10M7 14h6", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" }),
78
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "17", cy: "14", r: "2", fill: "white" }),
79
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M16 16l-1 4 2-1 2 1-1-4", fill: primaryColor })
80
- ] }),
81
- outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
82
- /* @__PURE__ */ jsxRuntime.jsx(
83
- "rect",
84
- {
85
- x: "3",
86
- y: "4",
87
- width: "18",
88
- height: "14",
89
- rx: "2",
90
- stroke: primaryColor,
91
- strokeWidth,
92
- fill: "none"
93
- }
94
- ),
95
- /* @__PURE__ */ jsxRuntime.jsx(
96
- "path",
97
- {
98
- d: "M7 8h10M7 11h10M7 14h6",
99
- stroke: primaryColor,
100
- strokeWidth,
101
- strokeLinecap: "round"
102
- }
103
- ),
104
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "17", cy: "14", r: "2", stroke: primaryColor, strokeWidth, fill: "none" }),
105
- /* @__PURE__ */ jsxRuntime.jsx(
106
- "path",
107
- {
108
- d: "M16 16l-1 4 2-1 2 1-1-4",
109
- stroke: primaryColor,
110
- strokeWidth,
111
- fill: "none"
112
- }
113
- )
114
- ] }),
115
- duotone: iconParts.swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
116
- /* @__PURE__ */ jsxRuntime.jsx(
117
- "rect",
118
- {
119
- x: "3",
120
- y: "4",
121
- width: "18",
122
- height: "14",
123
- rx: "2",
124
- fill: secondaryColor,
125
- opacity: secondaryOpacity
126
- }
127
- ),
128
- /* @__PURE__ */ jsxRuntime.jsx(
129
- "rect",
130
- {
131
- x: "3",
132
- y: "4",
133
- width: "18",
134
- height: "14",
135
- rx: "2",
136
- stroke: primaryColor,
137
- strokeWidth,
138
- fill: "none"
139
- }
140
- ),
141
- /* @__PURE__ */ jsxRuntime.jsx(
142
- "path",
143
- {
144
- d: "M7 8h10M7 11h10M7 14h6",
145
- stroke: primaryColor,
146
- strokeWidth,
147
- strokeLinecap: "round"
148
- }
149
- ),
150
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "17", cy: "14", r: "2", fill: primaryColor }),
151
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M16 16l-1 4 2-1 2 1-1-4", fill: primaryColor })
152
- ] })),
153
- vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
154
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "3", y: "4", width: "18", height: "14", rx: "2", fill: primaryColor }),
155
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "3", y: "4", width: "18", height: "14", rx: "2", fill: "white", opacity: "0.08" }),
156
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "17", cy: "14", r: "2", fill: "white" }),
157
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M16 16l-1 4 2-1 2 1-1-4", fill: "#F59E0B" }),
158
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M7 8h10M7 11h10M7 14h6", stroke: "white", strokeWidth: "1", strokeLinecap: "round" })
159
- ] })
160
- }
161
- });
162
72
  const NtdSchool = /* @__PURE__ */ createIcon.createIcon({
163
73
  displayName: "NtdSchool",
164
74
  paths: {
@@ -730,370 +640,85 @@ const NtdWebinar = /* @__PURE__ */ createIcon.createIcon({
730
640
  ] })
731
641
  }
732
642
  });
643
+ const CERT_SHEET = { x: 2, y: 4, width: 20, height: 14, rx: 2 };
644
+ const CERT_BORDER = { x: 3.75, y: 5.75, width: 16.5, height: 10.5, rx: 0.75 };
645
+ const CERT_TEXT = "M5.75 8.75h8.5M5.75 11.5h6";
646
+ const CERT_RIBBON = "M15 17h4v4.75l-2-1.5-2 1.5z";
647
+ const CERT_SEAL = { cx: 17, cy: 15, r: 3.25 };
648
+ function certificateFilled({ primaryColor, accentColor, accentOpacity, strokeWidth, uid }, seal, detail, detailOpacity) {
649
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
650
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: CERT_RIBBON, fill: seal }),
651
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...CERT_SHEET, fill: primaryColor }),
652
+ iconParts.within(
653
+ uid,
654
+ "certificate",
655
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...CERT_SHEET }),
656
+ /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
657
+ /* @__PURE__ */ jsxRuntime.jsx(
658
+ "rect",
659
+ {
660
+ ...CERT_BORDER,
661
+ stroke: detail,
662
+ strokeWidth: strokeWidth * 0.6,
663
+ opacity: detailOpacity,
664
+ fill: "none"
665
+ }
666
+ ),
667
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: CERT_TEXT, stroke: detail, strokeWidth: "1.25", opacity: detailOpacity })
668
+ ] })
669
+ ),
670
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { ...CERT_SEAL, r: CERT_SEAL.r + 0.9, fill: accentColor, opacity: accentOpacity }),
671
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { ...CERT_SEAL, fill: seal }),
672
+ /* @__PURE__ */ jsxRuntime.jsx(
673
+ "circle",
674
+ {
675
+ ...CERT_SEAL,
676
+ r: CERT_SEAL.r - 0.85,
677
+ stroke: detail === seal ? primaryColor : detail,
678
+ strokeWidth: strokeWidth * 0.6,
679
+ opacity: detailOpacity,
680
+ fill: "none"
681
+ }
682
+ )
683
+ ] });
684
+ }
733
685
  const NtdCertificate = /* @__PURE__ */ createIcon.createIcon({
734
686
  displayName: "NtdCertificate",
687
+ perfectStackX: CERT_SEAL.cx,
688
+ perfectStackY: CERT_SEAL.cy,
689
+ perfectStackSize: 0.2,
735
690
  paths: {
736
- solid: ({ primaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
737
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "2", y: "4", width: "20", height: "14", rx: "2", fill: primaryColor }),
738
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M6 8h12M6 11h8", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" }),
739
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "17", cy: "14", r: "3", fill: "white" }),
740
- /* @__PURE__ */ jsxRuntime.jsx(
741
- "path",
742
- {
743
- d: "M17 17v4l-1.5-1-1.5 1v-4M17 17v4l1.5-1 1.5 1v-4",
744
- stroke: primaryColor,
745
- strokeWidth: "1.5"
746
- }
747
- ),
748
- /* @__PURE__ */ jsxRuntime.jsx(
749
- "path",
750
- {
751
- d: "M16 13l1 1 2-2",
752
- stroke: primaryColor,
753
- strokeWidth: "1.5",
754
- strokeLinecap: "round",
755
- strokeLinejoin: "round"
756
- }
757
- )
758
- ] }),
759
- outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
760
- /* @__PURE__ */ jsxRuntime.jsx(
761
- "rect",
762
- {
763
- x: "2",
764
- y: "4",
765
- width: "20",
766
- height: "14",
767
- rx: "2",
768
- stroke: primaryColor,
769
- strokeWidth,
770
- fill: "none"
771
- }
772
- ),
773
- /* @__PURE__ */ jsxRuntime.jsx(
774
- "path",
775
- {
776
- d: "M6 8h12M6 11h8",
777
- stroke: primaryColor,
778
- strokeWidth,
779
- strokeLinecap: "round"
780
- }
781
- ),
782
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "17", cy: "14", r: "3", stroke: primaryColor, strokeWidth, fill: "none" }),
783
- /* @__PURE__ */ jsxRuntime.jsx(
784
- "path",
785
- {
786
- d: "M15.5 17v4l1.5-1 1.5 1v-4",
787
- stroke: primaryColor,
788
- strokeWidth,
789
- fill: "none"
790
- }
791
- ),
792
- /* @__PURE__ */ jsxRuntime.jsx(
793
- "path",
794
- {
795
- d: "M16 13l1 1 2-2",
796
- stroke: primaryColor,
797
- strokeWidth,
798
- strokeLinecap: "round",
799
- strokeLinejoin: "round"
800
- }
801
- )
691
+ solid: (p) => certificateFilled(p, p.primaryColor, p.accentColor, p.accentOpacity),
692
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: primaryColor, strokeWidth, strokeLinejoin: "miter", fill: "none", children: [
693
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 18H4a2 2 0 01-2-2V6a2 2 0 012-2h16a2 2 0 012 2v6.6" }),
694
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: CERT_TEXT }),
695
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { ...CERT_SEAL }),
696
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M15 17.6v4.15l2-1.5 2 1.5V17.6" })
802
697
  ] }),
803
- duotone: iconParts.swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
804
- /* @__PURE__ */ jsxRuntime.jsx(
805
- "rect",
806
- {
807
- x: "2",
808
- y: "4",
809
- width: "20",
810
- height: "14",
811
- rx: "2",
812
- fill: secondaryColor,
813
- opacity: secondaryOpacity
814
- }
815
- ),
816
- /* @__PURE__ */ jsxRuntime.jsx(
817
- "rect",
818
- {
819
- x: "2",
820
- y: "4",
821
- width: "20",
822
- height: "14",
823
- rx: "2",
824
- stroke: primaryColor,
825
- strokeWidth,
826
- fill: "none"
827
- }
828
- ),
829
- /* @__PURE__ */ jsxRuntime.jsx(
830
- "path",
831
- {
832
- d: "M6 8h12M6 11h8",
833
- stroke: primaryColor,
834
- strokeWidth,
835
- strokeLinecap: "round"
836
- }
837
- ),
838
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "17", cy: "14", r: "3", fill: primaryColor }),
839
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M15.5 17v4l1.5-1 1.5 1v-4", fill: primaryColor }),
840
- /* @__PURE__ */ jsxRuntime.jsx(
841
- "path",
842
- {
843
- d: "M16 13l1 1 2-2",
844
- stroke: "white",
845
- strokeWidth: "1.5",
846
- strokeLinecap: "round",
847
- strokeLinejoin: "round"
848
- }
849
- )
850
- ] })),
851
- vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
852
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "2", y: "4", width: "20", height: "14", rx: "2", fill: primaryColor }),
853
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "2", y: "4", width: "20", height: "14", rx: "2", fill: "white", opacity: "0.08" }),
854
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "17", cy: "14", r: "3", fill: "white" }),
855
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M6 8h12M6 11h8", stroke: "white", strokeWidth: "1", strokeLinecap: "round" }),
856
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M17 17v4l-1.5-1-1.5 1v-4M17 17v4l1.5-1 1.5 1v-4", stroke: "white", strokeWidth: "1" }),
857
- /* @__PURE__ */ jsxRuntime.jsx(
858
- "path",
859
- {
860
- d: "M16 13l1 1 2-2",
861
- stroke: "white",
862
- strokeWidth: "1",
863
- strokeLinecap: "round",
864
- strokeLinejoin: "round"
865
- }
866
- )
867
- ] })
698
+ duotone: (p) => certificateFilled(p, p.secondaryColor, p.secondaryColor, 1),
699
+ vivid: (p) => certificateFilled(p, p.secondaryColor, p.accentColor, p.accentOpacity)
868
700
  }
869
701
  });
702
+ const QUIZ_SHEET = { x: 3, y: 2, width: 18, height: 20, rx: 2 };
703
+ const QUIZ_QUESTION = "M6 6.5h12";
704
+ const QUIZ_BOXES = "M6 10.75h2.75v2.75H6zM6 15.75h2.75v2.75H6z";
705
+ const QUIZ_ANSWERS = "M11 12.1h7M11 17.1h5";
870
706
  const NtdQuiz = /* @__PURE__ */ createIcon.createIcon({
871
707
  displayName: "NtdQuiz",
872
708
  paths: {
873
- solid: ({ primaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
874
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "3", y: "2", width: "18", height: "20", rx: "2", fill: primaryColor }),
875
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "7", cy: "7", r: "1.5", fill: "white" }),
876
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "7", cy: "12", r: "1.5", fill: "white" }),
877
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "7", cy: "17", r: "1.5", fill: "white" }),
878
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M11 7h7M11 12h7M11 17h5", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" }),
879
- /* @__PURE__ */ jsxRuntime.jsx(
880
- "path",
881
- {
882
- d: "M6.5 6.5l1 1M6.5 7.5l1-1",
883
- stroke: primaryColor,
884
- strokeWidth: "1",
885
- strokeLinecap: "round"
886
- }
887
- )
888
- ] }),
889
- outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
890
- /* @__PURE__ */ jsxRuntime.jsx(
891
- "rect",
892
- {
893
- x: "3",
894
- y: "2",
895
- width: "18",
896
- height: "20",
897
- rx: "2",
898
- stroke: primaryColor,
899
- strokeWidth,
900
- fill: "none"
901
- }
902
- ),
903
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "7", cy: "7", r: "1.5", stroke: primaryColor, strokeWidth, fill: "none" }),
904
- /* @__PURE__ */ jsxRuntime.jsx(
905
- "circle",
906
- {
907
- cx: "7",
908
- cy: "12",
909
- r: "1.5",
910
- stroke: primaryColor,
911
- strokeWidth,
912
- fill: "none"
913
- }
914
- ),
915
- /* @__PURE__ */ jsxRuntime.jsx(
916
- "circle",
917
- {
918
- cx: "7",
919
- cy: "17",
920
- r: "1.5",
921
- stroke: primaryColor,
922
- strokeWidth,
923
- fill: "none"
924
- }
925
- ),
926
- /* @__PURE__ */ jsxRuntime.jsx(
927
- "path",
928
- {
929
- d: "M11 7h7M11 12h7M11 17h5",
930
- stroke: primaryColor,
931
- strokeWidth,
932
- strokeLinecap: "round"
933
- }
934
- )
709
+ solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
710
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...QUIZ_SHEET, fill: primaryColor }),
711
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: accentColor, opacity: accentOpacity, fill: "none", children: [
712
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: QUIZ_QUESTION, strokeWidth: "1.5" }),
713
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: QUIZ_BOXES, strokeWidth, strokeLinejoin: "miter" }),
714
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: QUIZ_ANSWERS, strokeWidth: "1.25" })
715
+ ] })
935
716
  ] }),
936
- duotone: iconParts.swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
937
- /* @__PURE__ */ jsxRuntime.jsx(
938
- "rect",
939
- {
940
- x: "3",
941
- y: "2",
942
- width: "18",
943
- height: "20",
944
- rx: "2",
945
- fill: secondaryColor,
946
- opacity: secondaryOpacity
947
- }
948
- ),
949
- /* @__PURE__ */ jsxRuntime.jsx(
950
- "rect",
951
- {
952
- x: "3",
953
- y: "2",
954
- width: "18",
955
- height: "20",
956
- rx: "2",
957
- stroke: primaryColor,
958
- strokeWidth,
959
- fill: "none"
960
- }
961
- ),
962
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "7", cy: "7", r: "1.5", fill: primaryColor }),
963
- /* @__PURE__ */ jsxRuntime.jsx(
964
- "circle",
965
- {
966
- cx: "7",
967
- cy: "12",
968
- r: "1.5",
969
- stroke: primaryColor,
970
- strokeWidth,
971
- fill: "none"
972
- }
973
- ),
974
- /* @__PURE__ */ jsxRuntime.jsx(
975
- "circle",
976
- {
977
- cx: "7",
978
- cy: "17",
979
- r: "1.5",
980
- stroke: primaryColor,
981
- strokeWidth,
982
- fill: "none"
983
- }
984
- ),
985
- /* @__PURE__ */ jsxRuntime.jsx(
986
- "path",
987
- {
988
- d: "M11 7h7M11 12h7M11 17h5",
989
- stroke: primaryColor,
990
- strokeWidth,
991
- strokeLinecap: "round"
992
- }
993
- )
994
- ] })),
995
- vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
996
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "3", y: "2", width: "18", height: "20", rx: "2", fill: primaryColor }),
997
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "3", y: "2", width: "18", height: "20", rx: "2", fill: "white", opacity: "0.08" }),
998
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "7", cy: "7", r: "1.5", fill: "white" }),
999
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "7", cy: "12", r: "1.5", fill: "white" }),
1000
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "7", cy: "17", r: "1.5", fill: "white" }),
1001
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M11 7h7M11 12h7M11 17h5", stroke: "white", strokeWidth: "1", strokeLinecap: "round" }),
1002
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M6.5 6.5l1 1M6.5 7.5l1-1", stroke: "white", strokeWidth: "1", strokeLinecap: "round" })
1003
- ] })
1004
- }
1005
- });
1006
- const NtdExam = /* @__PURE__ */ createIcon.createIcon({
1007
- displayName: "NtdExam",
1008
- paths: {
1009
- solid: ({ primaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1010
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M4 4a2 2 0 012-2h8l6 6v14a2 2 0 01-2 2H6a2 2 0 01-2-2V4z", fill: primaryColor }),
1011
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 2v6h6", fill: "white", opacity: "0.3" }),
1012
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M8 12h8M8 15h8M8 18h5", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" }),
1013
- /* @__PURE__ */ jsxRuntime.jsx("text", { x: "12", y: "10", textAnchor: "middle", fill: "white", fontSize: "5", fontWeight: "bold", children: "A+" })
1014
- ] }),
1015
- outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1016
- /* @__PURE__ */ jsxRuntime.jsx(
1017
- "path",
1018
- {
1019
- d: "M4 4a2 2 0 012-2h8l6 6v14a2 2 0 01-2 2H6a2 2 0 01-2-2V4z",
1020
- stroke: primaryColor,
1021
- strokeWidth,
1022
- fill: "none"
1023
- }
1024
- ),
1025
- /* @__PURE__ */ jsxRuntime.jsx(
1026
- "path",
1027
- {
1028
- d: "M14 2v6h6",
1029
- stroke: primaryColor,
1030
- strokeWidth,
1031
- strokeLinecap: "round",
1032
- strokeLinejoin: "round"
1033
- }
1034
- ),
1035
- /* @__PURE__ */ jsxRuntime.jsx(
1036
- "path",
1037
- {
1038
- d: "M8 12h8M8 15h8M8 18h5",
1039
- stroke: primaryColor,
1040
- strokeWidth,
1041
- strokeLinecap: "round"
1042
- }
1043
- ),
1044
- /* @__PURE__ */ jsxRuntime.jsx("text", { x: "12", y: "10", textAnchor: "middle", fill: primaryColor, fontSize: "5", fontWeight: "bold", children: "A+" })
1045
- ] }),
1046
- duotone: iconParts.swapDuotone(({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1047
- /* @__PURE__ */ jsxRuntime.jsx(
1048
- "path",
1049
- {
1050
- d: "M4 4a2 2 0 012-2h8l6 6v14a2 2 0 01-2 2H6a2 2 0 01-2-2V4z",
1051
- fill: secondaryColor,
1052
- opacity: secondaryOpacity
1053
- }
1054
- ),
1055
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 2v6h6", fill: primaryColor, opacity: "0.3" }),
1056
- /* @__PURE__ */ jsxRuntime.jsx(
1057
- "path",
1058
- {
1059
- d: "M4 4a2 2 0 012-2h8l6 6v14a2 2 0 01-2 2H6a2 2 0 01-2-2V4z",
1060
- stroke: primaryColor,
1061
- strokeWidth,
1062
- fill: "none"
1063
- }
1064
- ),
1065
- /* @__PURE__ */ jsxRuntime.jsx(
1066
- "path",
1067
- {
1068
- d: "M14 2v6h6",
1069
- stroke: primaryColor,
1070
- strokeWidth,
1071
- strokeLinecap: "round",
1072
- strokeLinejoin: "round"
1073
- }
1074
- ),
1075
- /* @__PURE__ */ jsxRuntime.jsx(
1076
- "path",
1077
- {
1078
- d: "M8 12h8M8 15h8M8 18h5",
1079
- stroke: primaryColor,
1080
- strokeWidth,
1081
- strokeLinecap: "round"
1082
- }
1083
- )
1084
- ] })),
1085
- vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1086
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M4 4a2 2 0 012-2h8l6 6v14a2 2 0 01-2 2H6a2 2 0 01-2-2V4z", fill: primaryColor }),
1087
- /* @__PURE__ */ jsxRuntime.jsx(
1088
- "path",
1089
- {
1090
- d: "M4 4a2 2 0 012-2h8l6 6v14a2 2 0 01-2 2H6a2 2 0 01-2-2V4z",
1091
- fill: "white",
1092
- opacity: "0.08"
1093
- }
1094
- ),
1095
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M14 2v6h6", fill: "white", opacity: "0.3" }),
1096
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M8 12h8M8 15h8M8 18h5", stroke: "white", strokeWidth: "1", strokeLinecap: "round" })
717
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: primaryColor, strokeWidth, strokeLinejoin: "miter", fill: "none", children: [
718
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...QUIZ_SHEET }),
719
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: QUIZ_QUESTION }),
720
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: QUIZ_BOXES }),
721
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: QUIZ_ANSWERS })
1097
722
  ] })
1098
723
  }
1099
724
  });
@@ -1296,10 +921,19 @@ const NtdBackpack = /* @__PURE__ */ createIcon.createIcon({
1296
921
  ] })
1297
922
  }
1298
923
  });
1299
- const CALC_BODY = { x: 4, y: 2, width: 16, height: 20, rx: 2 };
1300
- const CALC_DISPLAY = { x: 6.5, y: 4.5, width: 11, height: 4.5, rx: 1 };
1301
- const CALC_KEYS = "M6.6 11.2h2.6v2.2H6.6zM10.7 11.2h2.6v2.2h-2.6zM14.8 11.2h2.6v2.2h-2.6zM6.6 14.6h2.6v2.2H6.6zM10.7 14.6h2.6v2.2h-2.6zM14.8 14.6h2.6v2.2h-2.6zM6.6 18h2.6v2.2H6.6zM10.7 18h6.7v2.2h-6.7z";
1302
- function calculatorFilled({ primaryColor, accentColor, accentOpacity }, display, displayOpacity) {
924
+ const CALC_BODY = { x: 4.6, y: 2, width: 14.8, height: 20, rx: 2 };
925
+ const CALC_DISPLAY = { x: 6.8, y: 4.5, width: 10.4, height: 4.5, rx: 1 };
926
+ const CALC_KEYS = "M6.8 11h2.8v2.4H6.8zM10.6 11h2.8v2.4h-2.8zM14.4 11h2.8v2.4h-2.8zM6.8 14.4h2.8v2.4H6.8zM10.6 14.4h2.8v2.4h-2.8zM14.4 14.4h2.8v2.4h-2.8zM6.8 17.8h2.8v2.4H6.8zM10.6 17.8h6.6v2.4h-6.6z";
927
+ const CALC_DOTS = [
928
+ [8.2, 12.2],
929
+ [12, 12.2],
930
+ [15.8, 12.2],
931
+ [8.2, 15.6],
932
+ [12, 15.6],
933
+ [15.8, 15.6],
934
+ [8.2, 19]
935
+ ];
936
+ function calculatorFilled({ primaryColor, accentColor, accentOpacity, strokeWidth }, display, displayOpacity) {
1303
937
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1304
938
  /* @__PURE__ */ jsxRuntime.jsx("rect", { ...CALC_BODY, fill: primaryColor }),
1305
939
  /* @__PURE__ */ jsxRuntime.jsx("rect", { ...CALC_DISPLAY, fill: display, opacity: displayOpacity }),
@@ -1308,7 +942,7 @@ function calculatorFilled({ primaryColor, accentColor, accentOpacity }, display,
1308
942
  {
1309
943
  d: CALC_KEYS,
1310
944
  stroke: accentColor,
1311
- strokeWidth: "1.1",
945
+ strokeWidth: strokeWidth * 0.6,
1312
946
  strokeLinejoin: "miter",
1313
947
  opacity: accentOpacity,
1314
948
  fill: "none"
@@ -1321,47 +955,20 @@ const NtdCalculator = /* @__PURE__ */ createIcon.createIcon({
1321
955
  paths: {
1322
956
  solid: (props) => calculatorFilled(props, props.accentColor, props.accentOpacity),
1323
957
  outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1324
- /* @__PURE__ */ jsxRuntime.jsx(
1325
- "rect",
1326
- {
1327
- x: "4",
1328
- y: "2",
1329
- width: "16",
1330
- height: "20",
1331
- rx: "2",
1332
- stroke: primaryColor,
1333
- strokeWidth,
1334
- fill: "none"
1335
- }
1336
- ),
1337
- /* @__PURE__ */ jsxRuntime.jsx(
1338
- "rect",
1339
- {
1340
- x: "6",
1341
- y: "4",
1342
- width: "12",
1343
- height: "5",
1344
- rx: "1",
1345
- stroke: primaryColor,
1346
- strokeWidth,
1347
- fill: "none"
1348
- }
1349
- ),
1350
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "8", cy: "12", r: "1", fill: primaryColor }),
1351
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "12", r: "1", fill: primaryColor }),
1352
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "16", cy: "12", r: "1", fill: primaryColor }),
1353
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "8", cy: "16", r: "1", fill: primaryColor }),
1354
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "12", cy: "16", r: "1", fill: primaryColor }),
1355
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "16", cy: "16", r: "1", fill: primaryColor }),
1356
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "8", cy: "20", r: "1", fill: primaryColor }),
1357
- /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "11", y: "19", width: "6", height: "2", rx: "0.5", fill: primaryColor })
958
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", children: [
959
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...CALC_BODY }),
960
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...CALC_DISPLAY })
961
+ ] }),
962
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { fill: primaryColor, children: [
963
+ CALC_DOTS.map(([cx, cy]) => /* @__PURE__ */ jsxRuntime.jsx("circle", { cx, cy, r: "1" }, `${cx},${cy}`)),
964
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "10.6", y: "18.4", width: "6.6", height: "1.2", rx: "0.5" })
965
+ ] })
1358
966
  ] }),
1359
967
  vivid: (props) => calculatorFilled(props, props.secondaryColor, 1)
1360
968
  }
1361
969
  });
1362
970
  const educationIcons = {
1363
971
  NtdGraduationCap,
1364
- NtdDiploma,
1365
972
  NtdSchool,
1366
973
  NtdUniversity,
1367
974
  NtdBook,
@@ -1373,18 +980,157 @@ const educationIcons = {
1373
980
  NtdWebinar,
1374
981
  NtdCertificate,
1375
982
  NtdQuiz,
1376
- NtdExam,
1377
983
  NtdFlashcard,
1378
984
  NtdBackpack,
1379
985
  NtdCalculator
1380
986
  };
987
+ const SCROLL_SHEET = { x: 6, y: 4.5, width: 12, height: 15 };
988
+ const SCROLL_ROLL_TOP = { x: 3.5, y: 3, width: 17, height: 3.5, rx: 1.75 };
989
+ const SCROLL_ROLL_BOTTOM = { x: 3.5, y: 17.5, width: 17, height: 3.5, rx: 1.75 };
990
+ const SCROLL_WRITING = "M8.5 10h7M8.5 12.5h7M8.5 15h4.5";
991
+ const SCROLL_EASE = { calcMode: "spline", keySplines: "0.34 1 0.64 1" };
992
+ function scrollParts(sheet, rolls, writing, writingOpacity, lineWidth, stacked, outline) {
993
+ const paint = (color) => outline ? { stroke: color, strokeWidth: lineWidth, fill: "none", strokeLinejoin: "miter" } : { fill: color };
994
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
995
+ /* @__PURE__ */ jsxRuntime.jsxs("rect", { ...SCROLL_SHEET, ...paint(sheet), children: [
996
+ /* @__PURE__ */ jsxRuntime.jsx("animate", { attributeName: "y", from: "10.5", to: "4.5", dur: "0.7s", fill: "freeze", ...SCROLL_EASE }),
997
+ /* @__PURE__ */ jsxRuntime.jsx(
998
+ "animate",
999
+ {
1000
+ attributeName: "height",
1001
+ from: "3",
1002
+ to: "15",
1003
+ dur: "0.7s",
1004
+ fill: "freeze",
1005
+ ...SCROLL_EASE
1006
+ }
1007
+ )
1008
+ ] }),
1009
+ !stacked && /* @__PURE__ */ jsxRuntime.jsx("path", { d: SCROLL_WRITING, stroke: writing, strokeWidth: lineWidth, opacity: writingOpacity, children: /* @__PURE__ */ jsxRuntime.jsx(
1010
+ "animate",
1011
+ {
1012
+ attributeName: "stroke-opacity",
1013
+ values: "0;0;1",
1014
+ keyTimes: "0;0.6;1",
1015
+ dur: "0.7s",
1016
+ fill: "freeze"
1017
+ }
1018
+ ) }),
1019
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { children: [
1020
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...SCROLL_ROLL_TOP, ...paint(rolls) }),
1021
+ /* @__PURE__ */ jsxRuntime.jsx(
1022
+ "animateTransform",
1023
+ {
1024
+ attributeName: "transform",
1025
+ type: "translate",
1026
+ from: "0 6",
1027
+ to: "0 0",
1028
+ dur: "0.7s",
1029
+ fill: "freeze",
1030
+ ...SCROLL_EASE
1031
+ }
1032
+ )
1033
+ ] }),
1034
+ /* @__PURE__ */ jsxRuntime.jsxs("g", { children: [
1035
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...SCROLL_ROLL_BOTTOM, ...paint(rolls) }),
1036
+ /* @__PURE__ */ jsxRuntime.jsx(
1037
+ "animateTransform",
1038
+ {
1039
+ attributeName: "transform",
1040
+ type: "translate",
1041
+ from: "0 -6",
1042
+ to: "0 0",
1043
+ dur: "0.7s",
1044
+ fill: "freeze",
1045
+ ...SCROLL_EASE
1046
+ }
1047
+ )
1048
+ ] })
1049
+ ] });
1050
+ }
1051
+ const NtdScroll = /* @__PURE__ */ createIcon.createIcon({
1052
+ displayName: "NtdScroll",
1053
+ animated: true,
1054
+ perfectStackX: 12,
1055
+ perfectStackY: 12,
1056
+ perfectStackSize: 0.45,
1057
+ paths: {
1058
+ solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth, stacked }) => scrollParts(
1059
+ primaryColor,
1060
+ primaryColor,
1061
+ accentColor,
1062
+ accentOpacity,
1063
+ strokeWidth,
1064
+ stacked,
1065
+ false
1066
+ ),
1067
+ outline: ({ primaryColor, strokeWidth, stacked }) => scrollParts(primaryColor, primaryColor, primaryColor, 1, strokeWidth, stacked, true),
1068
+ duotone: ({ primaryColor, secondaryColor, strokeWidth, stacked }) => scrollParts(primaryColor, secondaryColor, secondaryColor, 1, strokeWidth, stacked, false),
1069
+ vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth, stacked }) => scrollParts(
1070
+ primaryColor,
1071
+ secondaryColor,
1072
+ accentColor,
1073
+ accentOpacity,
1074
+ strokeWidth,
1075
+ stacked,
1076
+ false
1077
+ )
1078
+ }
1079
+ });
1080
+ const ROLLED_BODY = { x: 3, y: 8, width: 18, height: 8, rx: 4 };
1081
+ const ROLLED_SPIRAL = "M7 14a2 2 0 110-4a1 1 0 010 2";
1082
+ const ROLLED_RIBBON = { x: 13.25, y: 8, width: 1.75, height: 8 };
1083
+ function rolledFilled(body, end, detail, detailOpacity, width, uid) {
1084
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1085
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...ROLLED_BODY, fill: body }),
1086
+ iconParts.within(
1087
+ uid,
1088
+ "rolled",
1089
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...ROLLED_BODY }),
1090
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...ROLLED_RIBBON, fill: detail, opacity: detailOpacity })
1091
+ ),
1092
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "7", cy: "12", r: "4", fill: end }),
1093
+ /* @__PURE__ */ jsxRuntime.jsx(
1094
+ "path",
1095
+ {
1096
+ d: "M7 8a4 4 0 010 8",
1097
+ stroke: detail,
1098
+ strokeWidth: width * 0.75,
1099
+ opacity: detailOpacity,
1100
+ fill: "none"
1101
+ }
1102
+ ),
1103
+ /* @__PURE__ */ jsxRuntime.jsx(
1104
+ "path",
1105
+ {
1106
+ d: ROLLED_SPIRAL,
1107
+ stroke: detail,
1108
+ strokeWidth: width,
1109
+ opacity: detailOpacity,
1110
+ fill: "none"
1111
+ }
1112
+ )
1113
+ ] });
1114
+ }
1115
+ const NtdScrollRolled = /* @__PURE__ */ createIcon.createIcon({
1116
+ displayName: "NtdScrollRolled",
1117
+ paths: {
1118
+ solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth, uid }) => rolledFilled(primaryColor, primaryColor, accentColor, accentOpacity, strokeWidth, uid),
1119
+ outline: ({ primaryColor, strokeWidth }) => /* @__PURE__ */ jsxRuntime.jsxs("g", { stroke: primaryColor, strokeWidth, fill: "none", strokeLinejoin: "miter", children: [
1120
+ /* @__PURE__ */ jsxRuntime.jsx("rect", { ...ROLLED_BODY }),
1121
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "7", cy: "12", r: "4" }),
1122
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: ROLLED_SPIRAL }),
1123
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M13.25 8v8M15 8v8" })
1124
+ ] }),
1125
+ duotone: ({ primaryColor, secondaryColor, strokeWidth, uid }) => rolledFilled(primaryColor, secondaryColor, primaryColor, 1, strokeWidth, uid),
1126
+ vivid: ({ primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth, uid }) => rolledFilled(primaryColor, secondaryColor, accentColor, accentOpacity, strokeWidth, uid)
1127
+ }
1128
+ });
1381
1129
  exports.NtdBackpack = NtdBackpack;
1382
1130
  exports.NtdBook = NtdBook;
1383
1131
  exports.NtdBookBookmark = NtdBookBookmark;
1384
1132
  exports.NtdCalculator = NtdCalculator;
1385
1133
  exports.NtdCertificate = NtdCertificate;
1386
- exports.NtdDiploma = NtdDiploma;
1387
- exports.NtdExam = NtdExam;
1388
1134
  exports.NtdFlashcard = NtdFlashcard;
1389
1135
  exports.NtdGraduationCap = NtdGraduationCap;
1390
1136
  exports.NtdNotebook = NtdNotebook;
@@ -1394,6 +1140,8 @@ exports.NtdPen = NtdPen;
1394
1140
  exports.NtdPencil = NtdPencil;
1395
1141
  exports.NtdQuiz = NtdQuiz;
1396
1142
  exports.NtdSchool = NtdSchool;
1143
+ exports.NtdScroll = NtdScroll;
1144
+ exports.NtdScrollRolled = NtdScrollRolled;
1397
1145
  exports.NtdUniversity = NtdUniversity;
1398
1146
  exports.NtdWebinar = NtdWebinar;
1399
1147
  exports.educationIcons = educationIcons;