@mesalvo/icons 0.0.32156

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 (137) hide show
  1. package/LICENSE +61 -0
  2. package/README.md +94 -0
  3. package/dist/index.d.ts +1562 -0
  4. package/dist/index.js +2 -0
  5. package/package.json +65 -0
  6. package/src/icons/Activity.tsx +22 -0
  7. package/src/icons/Ad.tsx +23 -0
  8. package/src/icons/Affiliate.tsx +22 -0
  9. package/src/icons/Alarm.tsx +23 -0
  10. package/src/icons/AlarmOff.tsx +23 -0
  11. package/src/icons/AlertCircle.tsx +22 -0
  12. package/src/icons/AlertTriangle.tsx +22 -0
  13. package/src/icons/Alt.tsx +22 -0
  14. package/src/icons/Approved.tsx +44 -0
  15. package/src/icons/ArrowBackUp.tsx +23 -0
  16. package/src/icons/ArrowDown.tsx +22 -0
  17. package/src/icons/ArrowLeft.tsx +22 -0
  18. package/src/icons/ArrowNarrowLeft.tsx +22 -0
  19. package/src/icons/ArrowNarrowRight.tsx +22 -0
  20. package/src/icons/ArrowRight.tsx +22 -0
  21. package/src/icons/ArrowUp.tsx +22 -0
  22. package/src/icons/ArrowsDiff.tsx +22 -0
  23. package/src/icons/AspectRatio.tsx +23 -0
  24. package/src/icons/Assembly.tsx +23 -0
  25. package/src/icons/Bold.tsx +22 -0
  26. package/src/icons/BookmarkPlus.tsx +22 -0
  27. package/src/icons/Briefcase.tsx +23 -0
  28. package/src/icons/Building.tsx +22 -0
  29. package/src/icons/BuildingHospital.tsx +23 -0
  30. package/src/icons/CalendarEvent.tsx +23 -0
  31. package/src/icons/Camera.tsx +23 -0
  32. package/src/icons/Capture.tsx +22 -0
  33. package/src/icons/ChartLine.tsx +22 -0
  34. package/src/icons/Check.tsx +22 -0
  35. package/src/icons/Checklist.tsx +22 -0
  36. package/src/icons/Checks.tsx +22 -0
  37. package/src/icons/ChevronDown.tsx +22 -0
  38. package/src/icons/ChevronLeft.tsx +22 -0
  39. package/src/icons/ChevronRight.tsx +22 -0
  40. package/src/icons/ChevronUp.tsx +22 -0
  41. package/src/icons/Clipboard.tsx +23 -0
  42. package/src/icons/Clock.tsx +23 -0
  43. package/src/icons/Cloud.tsx +22 -0
  44. package/src/icons/Code.tsx +22 -0
  45. package/src/icons/CodeDots.tsx +22 -0
  46. package/src/icons/Command.tsx +22 -0
  47. package/src/icons/Components.tsx +22 -0
  48. package/src/icons/Copy.tsx +23 -0
  49. package/src/icons/Cpu.tsx +23 -0
  50. package/src/icons/Dashboard.tsx +23 -0
  51. package/src/icons/Database.tsx +24 -0
  52. package/src/icons/DeviceDesktop.tsx +22 -0
  53. package/src/icons/DeviceFloppy.tsx +23 -0
  54. package/src/icons/DeviceLaptop.tsx +22 -0
  55. package/src/icons/Door.tsx +22 -0
  56. package/src/icons/Dots.tsx +22 -0
  57. package/src/icons/DotsVertical.tsx +22 -0
  58. package/src/icons/Download.tsx +22 -0
  59. package/src/icons/Edit.tsx +23 -0
  60. package/src/icons/EditOff.tsx +23 -0
  61. package/src/icons/Engine.tsx +22 -0
  62. package/src/icons/Eraser.tsx +22 -0
  63. package/src/icons/ExclamationCircle.tsx +22 -0
  64. package/src/icons/Eye.tsx +23 -0
  65. package/src/icons/EyeClosed.tsx +22 -0
  66. package/src/icons/FaceIdError.tsx +22 -0
  67. package/src/icons/File.tsx +23 -0
  68. package/src/icons/FileText.tsx +23 -0
  69. package/src/icons/FileUpload.tsx +24 -0
  70. package/src/icons/FileX.tsx +23 -0
  71. package/src/icons/Filter.tsx +22 -0
  72. package/src/icons/FilterOff.tsx +22 -0
  73. package/src/icons/Flag.tsx +22 -0
  74. package/src/icons/Focus.tsx +23 -0
  75. package/src/icons/Folder.tsx +22 -0
  76. package/src/icons/GenderFemale.tsx +22 -0
  77. package/src/icons/GenderMale.tsx +22 -0
  78. package/src/icons/GenderTransgender.tsx +22 -0
  79. package/src/icons/GridDots.tsx +22 -0
  80. package/src/icons/GripVertical.tsx +22 -0
  81. package/src/icons/Heart.tsx +22 -0
  82. package/src/icons/HeartHandshake.tsx +23 -0
  83. package/src/icons/Home.tsx +23 -0
  84. package/src/icons/Id.tsx +23 -0
  85. package/src/icons/InfoCircle.tsx +23 -0
  86. package/src/icons/InputSearch.tsx +22 -0
  87. package/src/icons/Italic.tsx +22 -0
  88. package/src/icons/Key.tsx +22 -0
  89. package/src/icons/Link.tsx +22 -0
  90. package/src/icons/Lock.tsx +23 -0
  91. package/src/icons/Logout.tsx +23 -0
  92. package/src/icons/Message.tsx +22 -0
  93. package/src/icons/MessageChatbot.tsx +23 -0
  94. package/src/icons/MessageDots.tsx +22 -0
  95. package/src/icons/Messages.tsx +22 -0
  96. package/src/icons/Microphone.tsx +23 -0
  97. package/src/icons/Minus.tsx +22 -0
  98. package/src/icons/Moon.tsx +22 -0
  99. package/src/icons/Navigation.tsx +22 -0
  100. package/src/icons/Password.tsx +22 -0
  101. package/src/icons/Pencil.tsx +22 -0
  102. package/src/icons/PlaylistAdd.tsx +22 -0
  103. package/src/icons/Plus.tsx +22 -0
  104. package/src/icons/Pointer.tsx +22 -0
  105. package/src/icons/QuestionMark.tsx +22 -0
  106. package/src/icons/Radio.tsx +22 -0
  107. package/src/icons/Radioactive.tsx +22 -0
  108. package/src/icons/Refresh.tsx +22 -0
  109. package/src/icons/ReplaceOff.tsx +22 -0
  110. package/src/icons/ReplaceUser.tsx +22 -0
  111. package/src/icons/Search.tsx +22 -0
  112. package/src/icons/Selector.tsx +22 -0
  113. package/src/icons/Send.tsx +22 -0
  114. package/src/icons/Settings.tsx +23 -0
  115. package/src/icons/Signature.tsx +27 -0
  116. package/src/icons/SortAscending.tsx +22 -0
  117. package/src/icons/SortDescending.tsx +22 -0
  118. package/src/icons/Sparkles.tsx +22 -0
  119. package/src/icons/Speakerphone.tsx +23 -0
  120. package/src/icons/Star.tsx +22 -0
  121. package/src/icons/Sun.tsx +22 -0
  122. package/src/icons/Tool.tsx +22 -0
  123. package/src/icons/Trash.tsx +22 -0
  124. package/src/icons/Underline.tsx +22 -0
  125. package/src/icons/Upload.tsx +22 -0
  126. package/src/icons/User.tsx +22 -0
  127. package/src/icons/Users.tsx +22 -0
  128. package/src/icons/Wand.tsx +22 -0
  129. package/src/icons/WaxSeal.tsx +40 -0
  130. package/src/icons/Wifi.tsx +23 -0
  131. package/src/icons/World.tsx +23 -0
  132. package/src/icons/X.tsx +22 -0
  133. package/src/icons/ZoomIn.tsx +22 -0
  134. package/src/icons/ZoomOut.tsx +22 -0
  135. package/src/icons/index.ts +126 -0
  136. package/src/map.ts +265 -0
  137. package/src/ui/Icon.tsx +21 -0
package/LICENSE ADDED
@@ -0,0 +1,61 @@
1
+ PROPRIETARY SOFTWARE LICENSE
2
+
3
+ Copyright (c) 2026 Mesalvo GmbH. All rights reserved.
4
+
5
+ NOTICE TO USER:
6
+
7
+ This software and associated documentation files (the "Software") are the
8
+ proprietary and confidential information of Mesalvo GmbH ("Mesalvo").
9
+
10
+ The Software is licensed, not sold. This license grants you the following rights:
11
+
12
+ 1. GRANT OF LICENSE
13
+ Subject to the terms and conditions of this License, Mesalvo grants you a
14
+ limited, non-exclusive, non-transferable, revocable license to use the
15
+ Software solely for internal business purposes within your organization.
16
+
17
+ 2. RESTRICTIONS
18
+ You may NOT:
19
+ - Copy, modify, or create derivative works of the Software
20
+ - Distribute, sublicense, lease, rent, or lend the Software
21
+ - Reverse engineer, decompile, or disassemble the Software
22
+ - Remove or alter any proprietary notices or labels on the Software
23
+ - Use the Software for any purpose other than as expressly permitted
24
+ - Transfer or assign your rights under this License
25
+
26
+ 3. OWNERSHIP
27
+ Mesalvo retains all right, title, and interest in and to the Software,
28
+ including all intellectual property rights therein. This License does not
29
+ grant you any rights to trademarks, service marks, or trade names of Mesalvo.
30
+
31
+ 4. CONFIDENTIALITY
32
+ The Software contains trade secrets and proprietary information of Mesalvo.
33
+ You agree to maintain the confidentiality of the Software and not to disclose
34
+ it to any third party without the prior written consent of Mesalvo.
35
+
36
+ 5. TERMINATION
37
+ This License is effective until terminated. Your rights under this License
38
+ will terminate automatically without notice if you fail to comply with any
39
+ term of this License. Upon termination, you must destroy all copies of the
40
+ Software in your possession.
41
+
42
+ 6. DISCLAIMER OF WARRANTIES
43
+ THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
44
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
45
+ FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT.
46
+
47
+ 7. LIMITATION OF LIABILITY
48
+ IN NO EVENT SHALL MESALVO BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER
49
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING
50
+ FROM, OUT OF, OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
51
+ DEALINGS IN THE SOFTWARE.
52
+
53
+ 8. GOVERNING LAW
54
+ This License shall be governed by and construed in accordance with the laws
55
+ of Germany, without regard to its conflict of law provisions.
56
+
57
+ For licensing inquiries, please contact:
58
+ Mesalvo GmbH
59
+ Email: info@mesalvo.com
60
+ Website: https://mesalvo.com
61
+
package/README.md ADDED
@@ -0,0 +1,94 @@
1
+
2
+ # How to Build an Icon Library with TypeScript, Tsup, and SVGR
3
+
4
+ This project is a TypeScript-based icon library that transforms SVG files into reusable React components using **SVGR** and bundles them efficiently with **Tsup**. This guide will show you how to set up the project, generate components from SVG files, customize them, and publish the library on npm.
5
+
6
+ ## Features
7
+
8
+ - **Reusable React components**: Automatically generate React components from SVG files.
9
+ - **Customizable icons**: Dynamically change the `size` and `color` of icons.
10
+ - **Bundled with Tsup**: Efficient bundling for both CommonJS and ES Modules.
11
+ - **TypeScript support**: Full type definitions for easy integration into TypeScript projects.
12
+
13
+ ## Project Structure
14
+
15
+ The folder structure for this project looks like this:
16
+
17
+ ```
18
+ my-icons-library/
19
+ ├── icons/ # SVG files go here
20
+ ├── src/
21
+ │ └── icons/ # Generated React components
22
+ ├── scripts/ # Utility scripts for custom tasks
23
+ ├── index.ts # Entry point of the library
24
+ ├── tsconfig.json # TypeScript config file
25
+ ├── package.json # Project settings
26
+ └── tsup.config.ts # Tsup config file for building the project
27
+ ```
28
+
29
+ ## Installation
30
+
31
+ To install the project dependencies, run:
32
+
33
+ ```bash
34
+ npm install
35
+ ```
36
+
37
+ ## Generating React Icon Components
38
+
39
+ Place your SVG files in the `icons/` folder. Then, run the following script to generate the React components from the SVG files:
40
+
41
+ ```bash
42
+ npm run generate-icons
43
+ ```
44
+
45
+ ## Customizing Icons
46
+
47
+ To add dynamic `size` and `color` properties to your icons, run the following script:
48
+
49
+ ```bash
50
+ npm run generate-and-modify-icons
51
+ ```
52
+
53
+ This will allow you to customize the appearance of icons when you use them in your React project.
54
+
55
+ ## Building the Library
56
+
57
+ To bundle the icon components and generate the output files in the `dist/` directory, run:
58
+
59
+ ```bash
60
+ npm run build
61
+ ```
62
+
63
+ This will create both CommonJS and ES Module bundles, along with the type definitions.
64
+
65
+ ## Publishing to npm
66
+
67
+ Follow these steps to publish your library to npm:
68
+
69
+ 1. Make sure you're logged in to npm:
70
+ ```bash
71
+ npm login
72
+ ```
73
+ 2. Publish the package:
74
+ ```bash
75
+ npm publish --access public
76
+ ```
77
+
78
+ ## License
79
+
80
+ This project is licensed under the MIT License.
81
+
82
+ ## Contributing
83
+
84
+ Feel free to fork this project and submit pull requests. Contributions are welcome!
85
+
86
+ ## Related Articles
87
+
88
+ For those looking to deepen their understanding of how to create and publish a TypeScript library, I recommend checking out the following resources:
89
+
90
+ - [How to Create a React Component Library Using Vite’s Library Mode](https://dev.to/receter/how-to-create-a-react-component-library-using-vites-library-mode-4lma)
91
+ - [How to Write a Tree-Shakable Component Library](https://dev.to/lukasbombach/how-to-write-a-tree-shakable-component-library-4ied)
92
+ - [How to Bundle a Tree-Shakable TypeScript Library with Tsup and Publish with npm](https://dev.to/orabazu/how-to-bundle-a-tree-shakable-typescript-library-with-tsup-and-publish-with-npm-3c46)
93
+
94
+ These articles offer additional insights into creating efficient, tree-shakable libraries.