@bookklik/senangstart-icons 1.0.7 → 1.0.11
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/.agent/skills/build-scripts/SKILL.md +155 -0
- package/.agent/skills/icon-development/SKILL.md +154 -0
- package/.agent/skills/senangstart-icons-architecture/SKILL.md +123 -0
- package/.agent/skills/testing/SKILL.md +202 -0
- package/.agent/skills/web-components/SKILL.md +209 -0
- package/.agent/workflows/add-icon.md +85 -0
- package/.agent/workflows/build.md +73 -0
- package/.agent/workflows/dev.md +52 -0
- package/.agent/workflows/docs.md +77 -0
- package/.agent/workflows/publish.md +80 -0
- package/.agent/workflows/test.md +56 -0
- package/.github/workflows/deploy-docs.yml +61 -0
- package/README.md +5 -5
- package/docs/.vitepress/config.mjs +173 -0
- package/docs/.vitepress/theme/custom.css +64 -0
- package/docs/.vitepress/theme/index.js +4 -0
- package/docs/guide/configuration.md +80 -0
- package/docs/guide/getting-started.md +41 -0
- package/docs/guide/installation.md +54 -0
- package/docs/guide/styling.md +156 -0
- package/docs/guide/usage.md +96 -0
- package/docs/icons/alert.md +55 -0
- package/docs/icons/align-bottom-object.md +55 -0
- package/docs/icons/align-center-object.md +55 -0
- package/docs/icons/align-left-object.md +55 -0
- package/docs/icons/align-middle-object.md +55 -0
- package/docs/icons/align-right-object.md +55 -0
- package/docs/icons/align-top-object.md +55 -0
- package/docs/icons/ar.md +55 -0
- package/docs/icons/archive-box.md +55 -0
- package/docs/icons/arrow-down.md +55 -0
- package/docs/icons/arrow-left-arrow-right.md +55 -0
- package/docs/icons/arrow-left-on-rectangle.md +55 -0
- package/docs/icons/arrow-left-right.md +55 -0
- package/docs/icons/arrow-left.md +55 -0
- package/docs/icons/arrow-long-down.md +55 -0
- package/docs/icons/arrow-long-left.md +55 -0
- package/docs/icons/arrow-long-right.md +55 -0
- package/docs/icons/arrow-long-up.md +55 -0
- package/docs/icons/arrow-path.md +55 -0
- package/docs/icons/arrow-right-on-rectangle.md +55 -0
- package/docs/icons/arrow-right.md +55 -0
- package/docs/icons/arrow-rotate-ccw.md +55 -0
- package/docs/icons/arrow-rotate-cw.md +55 -0
- package/docs/icons/arrow-top-right-on-square.md +55 -0
- package/docs/icons/arrow-up-arrow-down.md +55 -0
- package/docs/icons/arrow-up-down-left-right.md +55 -0
- package/docs/icons/arrow-up-down.md +55 -0
- package/docs/icons/arrow-up.md +55 -0
- package/docs/icons/banknotes.md +55 -0
- package/docs/icons/bars-3.md +55 -0
- package/docs/icons/basket.md +55 -0
- package/docs/icons/battery-0.md +55 -0
- package/docs/icons/battery-10.md +55 -0
- package/docs/icons/battery-100.md +55 -0
- package/docs/icons/battery-50.md +55 -0
- package/docs/icons/bell-alert.md +55 -0
- package/docs/icons/bell.md +55 -0
- package/docs/icons/bolt.md +55 -0
- package/docs/icons/book-close.md +55 -0
- package/docs/icons/book-open.md +55 -0
- package/docs/icons/book-stacked.md +55 -0
- package/docs/icons/bookmark.md +55 -0
- package/docs/icons/briefcase.md +55 -0
- package/docs/icons/brush.md +55 -0
- package/docs/icons/cake.md +55 -0
- package/docs/icons/calendar-approve.md +55 -0
- package/docs/icons/calendar-days.md +55 -0
- package/docs/icons/calendar-minus.md +55 -0
- package/docs/icons/calendar-plus.md +55 -0
- package/docs/icons/calendar-reject.md +55 -0
- package/docs/icons/calendar.md +55 -0
- package/docs/icons/camera.md +55 -0
- package/docs/icons/carousel.md +55 -0
- package/docs/icons/chart-bar.md +55 -0
- package/docs/icons/chart-line.md +55 -0
- package/docs/icons/chart-pie.md +55 -0
- package/docs/icons/chat-bubble-left-ellipsis.md +55 -0
- package/docs/icons/chat-bubble-left-right.md +55 -0
- package/docs/icons/chat-bubble-left.md +55 -0
- package/docs/icons/chat-bubble-right-ellipsis.md +55 -0
- package/docs/icons/chat-bubble-right.md +55 -0
- package/docs/icons/chatbot.md +55 -0
- package/docs/icons/check.md +55 -0
- package/docs/icons/chevron-double-down.md +55 -0
- package/docs/icons/chevron-double-left.md +55 -0
- package/docs/icons/chevron-double-right.md +55 -0
- package/docs/icons/chevron-double-up.md +55 -0
- package/docs/icons/chevron-down.md +55 -0
- package/docs/icons/chevron-left.md +55 -0
- package/docs/icons/chevron-right.md +55 -0
- package/docs/icons/chevron-up.md +55 -0
- package/docs/icons/circle.md +55 -0
- package/docs/icons/clipboard-document-check.md +55 -0
- package/docs/icons/clipboard.md +55 -0
- package/docs/icons/clock.md +55 -0
- package/docs/icons/cloud.md +55 -0
- package/docs/icons/code.md +55 -0
- package/docs/icons/cog-6-tooth.md +55 -0
- package/docs/icons/compress.md +55 -0
- package/docs/icons/computer-code.md +55 -0
- package/docs/icons/computer-desktop.md +55 -0
- package/docs/icons/computer-laptop.md +55 -0
- package/docs/icons/cone.md +55 -0
- package/docs/icons/console.md +55 -0
- package/docs/icons/container.md +55 -0
- package/docs/icons/contrast.md +55 -0
- package/docs/icons/controller.md +55 -0
- package/docs/icons/credit-card.md +55 -0
- package/docs/icons/crop.md +55 -0
- package/docs/icons/crosshair.md +55 -0
- package/docs/icons/cube.md +55 -0
- package/docs/icons/currency-dollar.md +55 -0
- package/docs/icons/currency-euro.md +55 -0
- package/docs/icons/currency-pound.md +55 -0
- package/docs/icons/currency-ringgit.md +55 -0
- package/docs/icons/currency-yen.md +55 -0
- package/docs/icons/cursor.md +55 -0
- package/docs/icons/cylinder-half.md +55 -0
- package/docs/icons/cylinder.md +55 -0
- package/docs/icons/device-phone-mobile.md +55 -0
- package/docs/icons/device-tablet.md +55 -0
- package/docs/icons/diamond.md +55 -0
- package/docs/icons/document-duplicate.md +55 -0
- package/docs/icons/document-text.md +55 -0
- package/docs/icons/document.md +55 -0
- package/docs/icons/dodecahedron.md +55 -0
- package/docs/icons/double-tick.md +55 -0
- package/docs/icons/draw-curve.md +55 -0
- package/docs/icons/draw-line.md +55 -0
- package/docs/icons/envelope-open.md +55 -0
- package/docs/icons/envelope.md +55 -0
- package/docs/icons/eraser.md +55 -0
- package/docs/icons/exclamation-circle.md +55 -0
- package/docs/icons/exclamation-triangle.md +55 -0
- package/docs/icons/expand.md +55 -0
- package/docs/icons/eye-slash.md +55 -0
- package/docs/icons/eye.md +55 -0
- package/docs/icons/flag.md +55 -0
- package/docs/icons/flip-horizontal.md +55 -0
- package/docs/icons/flip-vertical.md +55 -0
- package/docs/icons/focus.md +55 -0
- package/docs/icons/folder-minus.md +55 -0
- package/docs/icons/folder-open.md +55 -0
- package/docs/icons/folder-plus.md +55 -0
- package/docs/icons/folder.md +55 -0
- package/docs/icons/font.md +55 -0
- package/docs/icons/game.md +55 -0
- package/docs/icons/gift.md +55 -0
- package/docs/icons/globe-alt.md +55 -0
- package/docs/icons/gradient.md +55 -0
- package/docs/icons/grid.md +55 -0
- package/docs/icons/group-object.md +55 -0
- package/docs/icons/hand-grab.md +55 -0
- package/docs/icons/hand-thumb-down.md +55 -0
- package/docs/icons/hand-thumb-up.md +55 -0
- package/docs/icons/hand.md +55 -0
- package/docs/icons/heart-extruded.md +55 -0
- package/docs/icons/heart.md +55 -0
- package/docs/icons/hexagon.md +55 -0
- package/docs/icons/home.md +55 -0
- package/docs/icons/horizontal-3-dots.md +55 -0
- package/docs/icons/hourglass-0.md +55 -0
- package/docs/icons/hourglass-100.md +55 -0
- package/docs/icons/hourglass-50.md +55 -0
- package/docs/icons/hourglass-80.md +55 -0
- package/docs/icons/icosahedron.md +55 -0
- package/docs/icons/inbox.md +55 -0
- package/docs/icons/index.md +1295 -0
- package/docs/icons/information-circle.md +55 -0
- package/docs/icons/key.md +55 -0
- package/docs/icons/layer-stacks.md +55 -0
- package/docs/icons/layout.md +55 -0
- package/docs/icons/light-bulb.md +55 -0
- package/docs/icons/lock-closed.md +55 -0
- package/docs/icons/lock-open.md +55 -0
- package/docs/icons/magic-wand.md +55 -0
- package/docs/icons/magnifying-glass-focus.md +55 -0
- package/docs/icons/magnifying-glass-minus.md +55 -0
- package/docs/icons/magnifying-glass-plus.md +55 -0
- package/docs/icons/magnifying-glass.md +55 -0
- package/docs/icons/map-pin.md +55 -0
- package/docs/icons/map.md +55 -0
- package/docs/icons/marquee.md +55 -0
- package/docs/icons/maximize.md +55 -0
- package/docs/icons/medal.md +55 -0
- package/docs/icons/microphone-mute.md +55 -0
- package/docs/icons/microphone.md +55 -0
- package/docs/icons/minimize.md +55 -0
- package/docs/icons/minus.md +55 -0
- package/docs/icons/moon.md +55 -0
- package/docs/icons/musical-note.md +55 -0
- package/docs/icons/octahedron.md +55 -0
- package/docs/icons/panorama.md +55 -0
- package/docs/icons/paper-clip.md +55 -0
- package/docs/icons/pause-circle.md +55 -0
- package/docs/icons/pause.md +55 -0
- package/docs/icons/pencil.md +55 -0
- package/docs/icons/phone-x-mark.md +55 -0
- package/docs/icons/phone.md +55 -0
- package/docs/icons/photo.md +55 -0
- package/docs/icons/plane.md +55 -0
- package/docs/icons/play-circle.md +55 -0
- package/docs/icons/play.md +55 -0
- package/docs/icons/plus.md +55 -0
- package/docs/icons/polygon.md +55 -0
- package/docs/icons/presentation-chart-line.md +55 -0
- package/docs/icons/presentation-media.md +55 -0
- package/docs/icons/pyramid.md +55 -0
- package/docs/icons/qr-code.md +55 -0
- package/docs/icons/question-mark-circle.md +55 -0
- package/docs/icons/rectangle.md +55 -0
- package/docs/icons/reel.md +55 -0
- package/docs/icons/robot.md +55 -0
- package/docs/icons/roof.md +55 -0
- package/docs/icons/rotate-add.md +55 -0
- package/docs/icons/rotate-minus.md +55 -0
- package/docs/icons/save.md +55 -0
- package/docs/icons/scissor.md +55 -0
- package/docs/icons/shapes.md +55 -0
- package/docs/icons/shield-check.md +55 -0
- package/docs/icons/shield-exclamation.md +55 -0
- package/docs/icons/shopping-bag.md +55 -0
- package/docs/icons/shopping-cart.md +55 -0
- package/docs/icons/sliders-horizontal.md +55 -0
- package/docs/icons/sliders-vertical.md +55 -0
- package/docs/icons/sparkles.md +55 -0
- package/docs/icons/speaker-wave.md +55 -0
- package/docs/icons/speaker-x-mark.md +55 -0
- package/docs/icons/sphere-half.md +55 -0
- package/docs/icons/sphere.md +55 -0
- package/docs/icons/square.md +55 -0
- package/docs/icons/star.md +55 -0
- package/docs/icons/stop-circle.md +55 -0
- package/docs/icons/stop.md +55 -0
- package/docs/icons/sun.md +55 -0
- package/docs/icons/table.md +55 -0
- package/docs/icons/tabs.md +55 -0
- package/docs/icons/tetrahedron.md +55 -0
- package/docs/icons/text-align-center.md +55 -0
- package/docs/icons/text-align-justify.md +55 -0
- package/docs/icons/text-align-left.md +55 -0
- package/docs/icons/text-align-right.md +55 -0
- package/docs/icons/text.md +55 -0
- package/docs/icons/thunder.md +55 -0
- package/docs/icons/tic-tac-toe.md +55 -0
- package/docs/icons/time-reset.md +55 -0
- package/docs/icons/torus-knot.md +55 -0
- package/docs/icons/torus.md +55 -0
- package/docs/icons/trash.md +55 -0
- package/docs/icons/trophy.md +55 -0
- package/docs/icons/truck.md +55 -0
- package/docs/icons/tube.md +55 -0
- package/docs/icons/ungroup-object.md +55 -0
- package/docs/icons/user-circle.md +55 -0
- package/docs/icons/user-group.md +55 -0
- package/docs/icons/user-minus.md +55 -0
- package/docs/icons/user-plus.md +55 -0
- package/docs/icons/user.md +55 -0
- package/docs/icons/users.md +55 -0
- package/docs/icons/vertical-3-dots.md +55 -0
- package/docs/icons/video-camera.md +55 -0
- package/docs/icons/vr.md +55 -0
- package/docs/icons/wedge.md +55 -0
- package/docs/icons/whiteboard.md +55 -0
- package/docs/icons/wifi.md +55 -0
- package/docs/icons/window.md +55 -0
- package/docs/icons/x-mark.md +55 -0
- package/docs/index.md +55 -0
- package/docs/ms/guide/configuration.md +80 -0
- package/docs/ms/guide/getting-started.md +41 -0
- package/docs/ms/guide/installation.md +54 -0
- package/docs/ms/guide/styling.md +156 -0
- package/docs/ms/guide/usage.md +96 -0
- package/docs/ms/icons/alert.md +55 -0
- package/docs/ms/icons/align-bottom-object.md +55 -0
- package/docs/ms/icons/align-center-object.md +55 -0
- package/docs/ms/icons/align-left-object.md +55 -0
- package/docs/ms/icons/align-middle-object.md +55 -0
- package/docs/ms/icons/align-right-object.md +55 -0
- package/docs/ms/icons/align-top-object.md +55 -0
- package/docs/ms/icons/ar.md +55 -0
- package/docs/ms/icons/archive-box.md +55 -0
- package/docs/ms/icons/arrow-down.md +55 -0
- package/docs/ms/icons/arrow-left-arrow-right.md +55 -0
- package/docs/ms/icons/arrow-left-on-rectangle.md +55 -0
- package/docs/ms/icons/arrow-left-right.md +55 -0
- package/docs/ms/icons/arrow-left.md +55 -0
- package/docs/ms/icons/arrow-long-down.md +55 -0
- package/docs/ms/icons/arrow-long-left.md +55 -0
- package/docs/ms/icons/arrow-long-right.md +55 -0
- package/docs/ms/icons/arrow-long-up.md +55 -0
- package/docs/ms/icons/arrow-path.md +55 -0
- package/docs/ms/icons/arrow-right-on-rectangle.md +55 -0
- package/docs/ms/icons/arrow-right.md +55 -0
- package/docs/ms/icons/arrow-rotate-ccw.md +55 -0
- package/docs/ms/icons/arrow-rotate-cw.md +55 -0
- package/docs/ms/icons/arrow-top-right-on-square.md +55 -0
- package/docs/ms/icons/arrow-up-arrow-down.md +55 -0
- package/docs/ms/icons/arrow-up-down-left-right.md +55 -0
- package/docs/ms/icons/arrow-up-down.md +55 -0
- package/docs/ms/icons/arrow-up.md +55 -0
- package/docs/ms/icons/banknotes.md +55 -0
- package/docs/ms/icons/bars-3.md +55 -0
- package/docs/ms/icons/basket.md +55 -0
- package/docs/ms/icons/battery-0.md +55 -0
- package/docs/ms/icons/battery-10.md +55 -0
- package/docs/ms/icons/battery-100.md +55 -0
- package/docs/ms/icons/battery-50.md +55 -0
- package/docs/ms/icons/bell-alert.md +55 -0
- package/docs/ms/icons/bell.md +55 -0
- package/docs/ms/icons/bolt.md +55 -0
- package/docs/ms/icons/book-close.md +55 -0
- package/docs/ms/icons/book-open.md +55 -0
- package/docs/ms/icons/book-stacked.md +55 -0
- package/docs/ms/icons/bookmark.md +55 -0
- package/docs/ms/icons/briefcase.md +55 -0
- package/docs/ms/icons/brush.md +55 -0
- package/docs/ms/icons/cake.md +55 -0
- package/docs/ms/icons/calendar-approve.md +55 -0
- package/docs/ms/icons/calendar-days.md +55 -0
- package/docs/ms/icons/calendar-minus.md +55 -0
- package/docs/ms/icons/calendar-plus.md +55 -0
- package/docs/ms/icons/calendar-reject.md +55 -0
- package/docs/ms/icons/calendar.md +55 -0
- package/docs/ms/icons/camera.md +55 -0
- package/docs/ms/icons/carousel.md +55 -0
- package/docs/ms/icons/chart-bar.md +55 -0
- package/docs/ms/icons/chart-line.md +55 -0
- package/docs/ms/icons/chart-pie.md +55 -0
- package/docs/ms/icons/chat-bubble-left-ellipsis.md +55 -0
- package/docs/ms/icons/chat-bubble-left-right.md +55 -0
- package/docs/ms/icons/chat-bubble-left.md +55 -0
- package/docs/ms/icons/chat-bubble-right-ellipsis.md +55 -0
- package/docs/ms/icons/chat-bubble-right.md +55 -0
- package/docs/ms/icons/chatbot.md +55 -0
- package/docs/ms/icons/check.md +55 -0
- package/docs/ms/icons/chevron-double-down.md +55 -0
- package/docs/ms/icons/chevron-double-left.md +55 -0
- package/docs/ms/icons/chevron-double-right.md +55 -0
- package/docs/ms/icons/chevron-double-up.md +55 -0
- package/docs/ms/icons/chevron-down.md +55 -0
- package/docs/ms/icons/chevron-left.md +55 -0
- package/docs/ms/icons/chevron-right.md +55 -0
- package/docs/ms/icons/chevron-up.md +55 -0
- package/docs/ms/icons/circle.md +55 -0
- package/docs/ms/icons/clipboard-document-check.md +55 -0
- package/docs/ms/icons/clipboard.md +55 -0
- package/docs/ms/icons/clock.md +55 -0
- package/docs/ms/icons/cloud.md +55 -0
- package/docs/ms/icons/code.md +55 -0
- package/docs/ms/icons/cog-6-tooth.md +55 -0
- package/docs/ms/icons/compress.md +55 -0
- package/docs/ms/icons/computer-code.md +55 -0
- package/docs/ms/icons/computer-desktop.md +55 -0
- package/docs/ms/icons/computer-laptop.md +55 -0
- package/docs/ms/icons/cone.md +55 -0
- package/docs/ms/icons/console.md +55 -0
- package/docs/ms/icons/container.md +55 -0
- package/docs/ms/icons/contrast.md +55 -0
- package/docs/ms/icons/controller.md +55 -0
- package/docs/ms/icons/credit-card.md +55 -0
- package/docs/ms/icons/crop.md +55 -0
- package/docs/ms/icons/crosshair.md +55 -0
- package/docs/ms/icons/cube.md +55 -0
- package/docs/ms/icons/currency-dollar.md +55 -0
- package/docs/ms/icons/currency-euro.md +55 -0
- package/docs/ms/icons/currency-pound.md +55 -0
- package/docs/ms/icons/currency-ringgit.md +55 -0
- package/docs/ms/icons/currency-yen.md +55 -0
- package/docs/ms/icons/cursor.md +55 -0
- package/docs/ms/icons/cylinder-half.md +55 -0
- package/docs/ms/icons/cylinder.md +55 -0
- package/docs/ms/icons/device-phone-mobile.md +55 -0
- package/docs/ms/icons/device-tablet.md +55 -0
- package/docs/ms/icons/diamond.md +55 -0
- package/docs/ms/icons/document-duplicate.md +55 -0
- package/docs/ms/icons/document-text.md +55 -0
- package/docs/ms/icons/document.md +55 -0
- package/docs/ms/icons/dodecahedron.md +55 -0
- package/docs/ms/icons/double-tick.md +55 -0
- package/docs/ms/icons/draw-curve.md +55 -0
- package/docs/ms/icons/draw-line.md +55 -0
- package/docs/ms/icons/envelope-open.md +55 -0
- package/docs/ms/icons/envelope.md +55 -0
- package/docs/ms/icons/eraser.md +55 -0
- package/docs/ms/icons/exclamation-circle.md +55 -0
- package/docs/ms/icons/exclamation-triangle.md +55 -0
- package/docs/ms/icons/expand.md +55 -0
- package/docs/ms/icons/eye-slash.md +55 -0
- package/docs/ms/icons/eye.md +55 -0
- package/docs/ms/icons/flag.md +55 -0
- package/docs/ms/icons/flip-horizontal.md +55 -0
- package/docs/ms/icons/flip-vertical.md +55 -0
- package/docs/ms/icons/focus.md +55 -0
- package/docs/ms/icons/folder-minus.md +55 -0
- package/docs/ms/icons/folder-open.md +55 -0
- package/docs/ms/icons/folder-plus.md +55 -0
- package/docs/ms/icons/folder.md +55 -0
- package/docs/ms/icons/font.md +55 -0
- package/docs/ms/icons/game.md +55 -0
- package/docs/ms/icons/gift.md +55 -0
- package/docs/ms/icons/globe-alt.md +55 -0
- package/docs/ms/icons/gradient.md +55 -0
- package/docs/ms/icons/grid.md +55 -0
- package/docs/ms/icons/group-object.md +55 -0
- package/docs/ms/icons/hand-grab.md +55 -0
- package/docs/ms/icons/hand-thumb-down.md +55 -0
- package/docs/ms/icons/hand-thumb-up.md +55 -0
- package/docs/ms/icons/hand.md +55 -0
- package/docs/ms/icons/heart-extruded.md +55 -0
- package/docs/ms/icons/heart.md +55 -0
- package/docs/ms/icons/hexagon.md +55 -0
- package/docs/ms/icons/home.md +55 -0
- package/docs/ms/icons/horizontal-3-dots.md +55 -0
- package/docs/ms/icons/hourglass-0.md +55 -0
- package/docs/ms/icons/hourglass-100.md +55 -0
- package/docs/ms/icons/hourglass-50.md +55 -0
- package/docs/ms/icons/hourglass-80.md +55 -0
- package/docs/ms/icons/icosahedron.md +55 -0
- package/docs/ms/icons/inbox.md +55 -0
- package/docs/ms/icons/index.md +1295 -0
- package/docs/ms/icons/information-circle.md +55 -0
- package/docs/ms/icons/key.md +55 -0
- package/docs/ms/icons/layer-stacks.md +55 -0
- package/docs/ms/icons/layout.md +55 -0
- package/docs/ms/icons/light-bulb.md +55 -0
- package/docs/ms/icons/lock-closed.md +55 -0
- package/docs/ms/icons/lock-open.md +55 -0
- package/docs/ms/icons/magic-wand.md +55 -0
- package/docs/ms/icons/magnifying-glass-focus.md +55 -0
- package/docs/ms/icons/magnifying-glass-minus.md +55 -0
- package/docs/ms/icons/magnifying-glass-plus.md +55 -0
- package/docs/ms/icons/magnifying-glass.md +55 -0
- package/docs/ms/icons/map-pin.md +55 -0
- package/docs/ms/icons/map.md +55 -0
- package/docs/ms/icons/marquee.md +55 -0
- package/docs/ms/icons/maximize.md +55 -0
- package/docs/ms/icons/medal.md +55 -0
- package/docs/ms/icons/microphone-mute.md +55 -0
- package/docs/ms/icons/microphone.md +55 -0
- package/docs/ms/icons/minimize.md +55 -0
- package/docs/ms/icons/minus.md +55 -0
- package/docs/ms/icons/moon.md +55 -0
- package/docs/ms/icons/musical-note.md +55 -0
- package/docs/ms/icons/octahedron.md +55 -0
- package/docs/ms/icons/panorama.md +55 -0
- package/docs/ms/icons/paper-clip.md +55 -0
- package/docs/ms/icons/pause-circle.md +55 -0
- package/docs/ms/icons/pause.md +55 -0
- package/docs/ms/icons/pencil.md +55 -0
- package/docs/ms/icons/phone-x-mark.md +55 -0
- package/docs/ms/icons/phone.md +55 -0
- package/docs/ms/icons/photo.md +55 -0
- package/docs/ms/icons/plane.md +55 -0
- package/docs/ms/icons/play-circle.md +55 -0
- package/docs/ms/icons/play.md +55 -0
- package/docs/ms/icons/plus.md +55 -0
- package/docs/ms/icons/polygon.md +55 -0
- package/docs/ms/icons/presentation-chart-line.md +55 -0
- package/docs/ms/icons/presentation-media.md +55 -0
- package/docs/ms/icons/pyramid.md +55 -0
- package/docs/ms/icons/qr-code.md +55 -0
- package/docs/ms/icons/question-mark-circle.md +55 -0
- package/docs/ms/icons/rectangle.md +55 -0
- package/docs/ms/icons/reel.md +55 -0
- package/docs/ms/icons/robot.md +55 -0
- package/docs/ms/icons/roof.md +55 -0
- package/docs/ms/icons/rotate-add.md +55 -0
- package/docs/ms/icons/rotate-minus.md +55 -0
- package/docs/ms/icons/save.md +55 -0
- package/docs/ms/icons/scissor.md +55 -0
- package/docs/ms/icons/shapes.md +55 -0
- package/docs/ms/icons/shield-check.md +55 -0
- package/docs/ms/icons/shield-exclamation.md +55 -0
- package/docs/ms/icons/shopping-bag.md +55 -0
- package/docs/ms/icons/shopping-cart.md +55 -0
- package/docs/ms/icons/sliders-horizontal.md +55 -0
- package/docs/ms/icons/sliders-vertical.md +55 -0
- package/docs/ms/icons/sparkles.md +55 -0
- package/docs/ms/icons/speaker-wave.md +55 -0
- package/docs/ms/icons/speaker-x-mark.md +55 -0
- package/docs/ms/icons/sphere-half.md +55 -0
- package/docs/ms/icons/sphere.md +55 -0
- package/docs/ms/icons/square.md +55 -0
- package/docs/ms/icons/star.md +55 -0
- package/docs/ms/icons/stop-circle.md +55 -0
- package/docs/ms/icons/stop.md +55 -0
- package/docs/ms/icons/sun.md +55 -0
- package/docs/ms/icons/table.md +55 -0
- package/docs/ms/icons/tabs.md +55 -0
- package/docs/ms/icons/tetrahedron.md +55 -0
- package/docs/ms/icons/text-align-center.md +55 -0
- package/docs/ms/icons/text-align-justify.md +55 -0
- package/docs/ms/icons/text-align-left.md +55 -0
- package/docs/ms/icons/text-align-right.md +55 -0
- package/docs/ms/icons/text.md +55 -0
- package/docs/ms/icons/thunder.md +55 -0
- package/docs/ms/icons/tic-tac-toe.md +55 -0
- package/docs/ms/icons/time-reset.md +55 -0
- package/docs/ms/icons/torus-knot.md +55 -0
- package/docs/ms/icons/torus.md +55 -0
- package/docs/ms/icons/trash.md +55 -0
- package/docs/ms/icons/trophy.md +55 -0
- package/docs/ms/icons/truck.md +55 -0
- package/docs/ms/icons/tube.md +55 -0
- package/docs/ms/icons/ungroup-object.md +55 -0
- package/docs/ms/icons/user-circle.md +55 -0
- package/docs/ms/icons/user-group.md +55 -0
- package/docs/ms/icons/user-minus.md +55 -0
- package/docs/ms/icons/user-plus.md +55 -0
- package/docs/ms/icons/user.md +55 -0
- package/docs/ms/icons/users.md +55 -0
- package/docs/ms/icons/vertical-3-dots.md +55 -0
- package/docs/ms/icons/video-camera.md +55 -0
- package/docs/ms/icons/vr.md +55 -0
- package/docs/ms/icons/wedge.md +55 -0
- package/docs/ms/icons/whiteboard.md +55 -0
- package/docs/ms/icons/wifi.md +55 -0
- package/docs/ms/icons/window.md +55 -0
- package/docs/ms/icons/x-mark.md +55 -0
- package/docs/ms/index.md +55 -0
- package/docs/public/assets/senangstart-icons-logo.svg +1 -0
- package/docs/public/assets/ss-logo.svg +83 -0
- package/docs/public/llms.txt +285 -0
- package/package.json +13 -3
- package/scripts/build-icon-docs.js +323 -0
- package/scripts/build.js +44 -0
- package/scripts/generate-llms-txt.js +70 -0
- package/test-results.json +11 -0
- package/tests/build-css.test.js +134 -0
- package/tests/build-icon-docs.test.js +134 -0
- package/tests/build-pipeline.test.js +138 -0
- package/tests/build-svgs.test.js +102 -0
- package/tests/ss-icon.test.js +178 -0
- package/tests/ss-loader.test.js +156 -0
- package/vitest.config.js +15 -0
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { defineConfig } from 'vitepress'
|
|
2
|
+
import { createRequire } from 'module'
|
|
3
|
+
import fs from 'fs'
|
|
4
|
+
import path from 'path'
|
|
5
|
+
|
|
6
|
+
const require = createRequire(import.meta.url)
|
|
7
|
+
const pkg = require('../../package.json')
|
|
8
|
+
|
|
9
|
+
// Load icons from icons.json to generate sidebar
|
|
10
|
+
const iconsPath = path.resolve(__dirname, '../../src/icons.json')
|
|
11
|
+
const icons = JSON.parse(fs.readFileSync(iconsPath, 'utf8'))
|
|
12
|
+
const iconSidebarItems = icons.map(icon => ({
|
|
13
|
+
text: icon.name,
|
|
14
|
+
link: `/icons/${icon.slug}`
|
|
15
|
+
}))
|
|
16
|
+
|
|
17
|
+
// Shared theme config
|
|
18
|
+
const sharedThemeConfig = {
|
|
19
|
+
logo: '/assets/ss-logo.svg',
|
|
20
|
+
socialLinks: [
|
|
21
|
+
{ icon: 'github', link: 'https://github.com/bookklik-technologies/senangstart-icons' }
|
|
22
|
+
],
|
|
23
|
+
footer: {
|
|
24
|
+
message: 'SenangStart Icons v' + pkg.version + ' is part of the <a href="https://senangstart.com/" target="_blank" style="color: var(--vp-c-brand)">SenangStart</a> ecosystem.',
|
|
25
|
+
copyright: `Copyright © ${new Date().getFullYear()} <a href="https://bookklik.com/" target="_blank" style="color: #ff6600">Bookklik Technologies</a>. Released under the MIT License.`
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// Generate Malay icon sidebar items
|
|
30
|
+
const iconSidebarItemsMs = icons.map(icon => ({
|
|
31
|
+
text: icon.name,
|
|
32
|
+
link: `/ms/icons/${icon.slug}`
|
|
33
|
+
}))
|
|
34
|
+
|
|
35
|
+
export default defineConfig({
|
|
36
|
+
title: 'SenangStart Icons',
|
|
37
|
+
description: 'Curated Starter icons designed for web projects',
|
|
38
|
+
base: '/senangstart-icons/',
|
|
39
|
+
|
|
40
|
+
head: [
|
|
41
|
+
['link', { rel: 'icon', type: 'image/png', href: 'https://senangstart.com/img/ss_icon_accent.svg' }],
|
|
42
|
+
['script', { type: 'senangstart/config' }, '{ "darkMode": "selector" }'],
|
|
43
|
+
],
|
|
44
|
+
|
|
45
|
+
locales: {
|
|
46
|
+
root: {
|
|
47
|
+
label: 'English',
|
|
48
|
+
lang: 'en'
|
|
49
|
+
},
|
|
50
|
+
ms: {
|
|
51
|
+
label: 'Bahasa Melayu',
|
|
52
|
+
lang: 'ms',
|
|
53
|
+
title: 'SenangStart Icons',
|
|
54
|
+
description: 'Ikon permulaan terkurasi untuk projek web',
|
|
55
|
+
themeConfig: {
|
|
56
|
+
nav: [
|
|
57
|
+
{ text: 'Utama', link: '/ms/' },
|
|
58
|
+
{ text: 'Panduan', link: '/ms/guide/getting-started' },
|
|
59
|
+
{ text: 'Ikon', link: '/ms/icons/' },
|
|
60
|
+
{
|
|
61
|
+
text: `v${pkg.version}`,
|
|
62
|
+
items: [
|
|
63
|
+
{ text: 'Changelog', link: '/changelog' },
|
|
64
|
+
{ text: 'GitHub', link: 'https://github.com/bookklik-technologies/senangstart-icons' }
|
|
65
|
+
]
|
|
66
|
+
}
|
|
67
|
+
],
|
|
68
|
+
sidebar: {
|
|
69
|
+
'/ms/guide/': [
|
|
70
|
+
{
|
|
71
|
+
text: 'Pengenalan',
|
|
72
|
+
items: [
|
|
73
|
+
{ text: 'Bermula', link: '/ms/guide/getting-started' },
|
|
74
|
+
{ text: 'Pemasangan', link: '/ms/guide/installation' },
|
|
75
|
+
{ text: 'Penggunaan', link: '/ms/guide/usage' }
|
|
76
|
+
]
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
text: 'Penyesuaian',
|
|
80
|
+
items: [
|
|
81
|
+
{ text: 'Penggayaan', link: '/ms/guide/styling' },
|
|
82
|
+
{ text: 'Konfigurasi', link: '/ms/guide/configuration' }
|
|
83
|
+
]
|
|
84
|
+
}
|
|
85
|
+
],
|
|
86
|
+
'/ms/icons/': [
|
|
87
|
+
{
|
|
88
|
+
text: 'Pustaka Ikon',
|
|
89
|
+
items: [
|
|
90
|
+
{ text: 'Semua Ikon', link: '/ms/icons/' }
|
|
91
|
+
]
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
text: 'Ikon',
|
|
95
|
+
collapsed: false,
|
|
96
|
+
items: iconSidebarItemsMs
|
|
97
|
+
}
|
|
98
|
+
]
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
},
|
|
103
|
+
|
|
104
|
+
themeConfig: {
|
|
105
|
+
...sharedThemeConfig,
|
|
106
|
+
|
|
107
|
+
nav: [
|
|
108
|
+
{ text: 'Home', link: '/' },
|
|
109
|
+
{ text: 'Guide', link: '/guide/getting-started' },
|
|
110
|
+
{ text: 'Icons', link: '/icons/' },
|
|
111
|
+
{
|
|
112
|
+
text: `v${pkg.version}`,
|
|
113
|
+
items: [
|
|
114
|
+
{ text: 'Changelog', link: '/changelog' },
|
|
115
|
+
{ text: 'GitHub', link: 'https://github.com/bookklik-technologies/senangstart-icons' }
|
|
116
|
+
]
|
|
117
|
+
}
|
|
118
|
+
],
|
|
119
|
+
|
|
120
|
+
sidebar: {
|
|
121
|
+
'/guide/': [
|
|
122
|
+
{
|
|
123
|
+
text: 'Introduction',
|
|
124
|
+
items: [
|
|
125
|
+
{ text: 'Getting Started', link: '/guide/getting-started' },
|
|
126
|
+
{ text: 'Installation', link: '/guide/installation' },
|
|
127
|
+
{ text: 'Usage', link: '/guide/usage' }
|
|
128
|
+
]
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
text: 'Customization',
|
|
132
|
+
items: [
|
|
133
|
+
{ text: 'Styling', link: '/guide/styling' },
|
|
134
|
+
{ text: 'Configuration', link: '/guide/configuration' }
|
|
135
|
+
]
|
|
136
|
+
}
|
|
137
|
+
],
|
|
138
|
+
'/icons/': [
|
|
139
|
+
{
|
|
140
|
+
text: 'Icon Library',
|
|
141
|
+
items: [
|
|
142
|
+
{ text: 'All Icons', link: '/icons/' }
|
|
143
|
+
]
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
text: 'Icons',
|
|
147
|
+
collapsed: false,
|
|
148
|
+
items: iconSidebarItems
|
|
149
|
+
}
|
|
150
|
+
]
|
|
151
|
+
},
|
|
152
|
+
|
|
153
|
+
socialLinks: [
|
|
154
|
+
{ icon: 'github', link: 'https://github.com/bookklik-technologies/senangstart-icons' }
|
|
155
|
+
],
|
|
156
|
+
|
|
157
|
+
search: {
|
|
158
|
+
provider: 'local'
|
|
159
|
+
}
|
|
160
|
+
},
|
|
161
|
+
|
|
162
|
+
markdown: {
|
|
163
|
+
config: (md) => {
|
|
164
|
+
md.core.ruler.push('replace_version', (state) => {
|
|
165
|
+
state.tokens.forEach((token) => {
|
|
166
|
+
if (token.type === 'fence' && token.content.includes('__PKG_VERSION__')) {
|
|
167
|
+
token.content = token.content.replace(/__PKG_VERSION__/g, pkg.version)
|
|
168
|
+
}
|
|
169
|
+
})
|
|
170
|
+
})
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
})
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SenangStart CSS - VitePress Theme Customization
|
|
3
|
+
* Brand colors: primary #2563EB, secondary #DBEAFE, dark #3E4A5D
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/* Font family - Outfit (must be first) */
|
|
7
|
+
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap');
|
|
8
|
+
|
|
9
|
+
:root {
|
|
10
|
+
/* Brand Colors */
|
|
11
|
+
--vp-c-brand-1: #2563EB;
|
|
12
|
+
--vp-c-brand-2: #3B82F6;
|
|
13
|
+
--vp-c-brand-3: #DBEAFE;
|
|
14
|
+
|
|
15
|
+
/* Override default colors */
|
|
16
|
+
--vp-c-default-1: #3E4A5D;
|
|
17
|
+
--vp-c-default-2: #4B5563;
|
|
18
|
+
--vp-c-default-3: #6B7280;
|
|
19
|
+
|
|
20
|
+
/* Button colors */
|
|
21
|
+
--vp-button-brand-bg: #2563EB;
|
|
22
|
+
--vp-button-brand-hover-bg: #1D4ED8;
|
|
23
|
+
--vp-button-brand-active-bg: #1E40AF;
|
|
24
|
+
|
|
25
|
+
/* Font family */
|
|
26
|
+
--vp-font-family-base: 'Outfit', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
|
27
|
+
--vp-font-family-mono: 'JetBrains Mono', 'Fira Code', monospace;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/* Code blocks with brand accent */
|
|
31
|
+
.vp-doc div[class*='language-'] {
|
|
32
|
+
border-left: 3px solid #2563EB;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/* Sidebar active link */
|
|
36
|
+
.VPSidebarItem.is-active > .item > .link > .text {
|
|
37
|
+
color: #2563EB;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/* Custom container styling */
|
|
41
|
+
.custom-block.tip {
|
|
42
|
+
border-color: #2563EB;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.custom-block.warning {
|
|
46
|
+
border-color: #F59E0B;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.custom-block.danger {
|
|
50
|
+
border-color: #EF4444;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/* Hero alt button - white background for better visibility */
|
|
54
|
+
.VPButton.alt {
|
|
55
|
+
background-color: #F1F5F9 !important;
|
|
56
|
+
color: #3E4A5D !important;
|
|
57
|
+
border-color: #F1F5F9 !important;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.VPButton.alt:hover {
|
|
61
|
+
background-color: #DBEAFE !important;
|
|
62
|
+
color: #2563EB !important;
|
|
63
|
+
border-color: #DBEAFE !important;
|
|
64
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# Configuration
|
|
2
|
+
|
|
3
|
+
Configure SenangStart Icons for your project needs.
|
|
4
|
+
|
|
5
|
+
## Framework Integration
|
|
6
|
+
|
|
7
|
+
### Vue.js
|
|
8
|
+
|
|
9
|
+
```vue
|
|
10
|
+
<template>
|
|
11
|
+
<ss-icon :icon="iconName" :style="{ fontSize: iconSize + 'px' }"></ss-icon>
|
|
12
|
+
</template>
|
|
13
|
+
|
|
14
|
+
<script setup>
|
|
15
|
+
import '@bookklik/senangstart-icons';
|
|
16
|
+
|
|
17
|
+
const iconName = 'home';
|
|
18
|
+
const iconSize = 24;
|
|
19
|
+
</script>
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
### React
|
|
23
|
+
|
|
24
|
+
```jsx
|
|
25
|
+
import '@bookklik/senangstart-icons';
|
|
26
|
+
|
|
27
|
+
function App() {
|
|
28
|
+
return (
|
|
29
|
+
<ss-icon icon="home" style={{ fontSize: '24px' }}></ss-icon>
|
|
30
|
+
);
|
|
31
|
+
}
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### Angular
|
|
35
|
+
|
|
36
|
+
```ts
|
|
37
|
+
// app.module.ts
|
|
38
|
+
import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
|
|
39
|
+
import '@bookklik/senangstart-icons';
|
|
40
|
+
|
|
41
|
+
@NgModule({
|
|
42
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA]
|
|
43
|
+
})
|
|
44
|
+
export class AppModule { }
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
```html
|
|
48
|
+
<!-- component.html -->
|
|
49
|
+
<ss-icon icon="home" style="font-size: 24px;"></ss-icon>
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## Build Configuration
|
|
53
|
+
|
|
54
|
+
### Webpack
|
|
55
|
+
|
|
56
|
+
No additional configuration needed. Import directly:
|
|
57
|
+
|
|
58
|
+
```js
|
|
59
|
+
import '@bookklik/senangstart-icons';
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Vite
|
|
63
|
+
|
|
64
|
+
Works out of the box:
|
|
65
|
+
|
|
66
|
+
```js
|
|
67
|
+
import '@bookklik/senangstart-icons';
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Rollup
|
|
71
|
+
|
|
72
|
+
Add to your input:
|
|
73
|
+
|
|
74
|
+
```js
|
|
75
|
+
// rollup.config.js
|
|
76
|
+
export default {
|
|
77
|
+
input: 'src/main.js',
|
|
78
|
+
// ... rest of config
|
|
79
|
+
};
|
|
80
|
+
```
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Getting Started
|
|
2
|
+
|
|
3
|
+
SenangStart Icons is a curated icon library designed for web projects. It provides a simple, consistent API for using icons across your applications.
|
|
4
|
+
|
|
5
|
+
## What is SenangStart Icons?
|
|
6
|
+
|
|
7
|
+
SenangStart Icons offers:
|
|
8
|
+
|
|
9
|
+
- **Web Component-based** - Use icons as custom HTML elements
|
|
10
|
+
- **Consistent Design** - All icons follow a unified design language
|
|
11
|
+
- **Easy Customization** - Control size, color, and stroke width
|
|
12
|
+
- **Lightweight** - Optimized SVG icons for fast loading
|
|
13
|
+
|
|
14
|
+
## Quick Example
|
|
15
|
+
|
|
16
|
+
```html
|
|
17
|
+
<!DOCTYPE html>
|
|
18
|
+
<html>
|
|
19
|
+
<head>
|
|
20
|
+
<script src="https://unpkg.com/@bookklik/senangstart-icons/dist/senangstart-icon.min.js"></script>
|
|
21
|
+
</head>
|
|
22
|
+
<body>
|
|
23
|
+
<ss-icon icon="home"></ss-icon>
|
|
24
|
+
<!-- Use CSS for sizing and color -->
|
|
25
|
+
<ss-icon icon="user" style="font-size: 32px;"></ss-icon>
|
|
26
|
+
<ss-icon icon="settings" style="color: #3498db;"></ss-icon>
|
|
27
|
+
</body>
|
|
28
|
+
</html>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## For AI Assistants
|
|
32
|
+
|
|
33
|
+
If you are using AI coding assistants (like Cursor, Windsurf, or others), you can provide them with our specialized context file. This file contains the full list of available icons and usage instructions in a format optimized for LLMs.
|
|
34
|
+
|
|
35
|
+
File location: [`https://bookklik-technologies.github.io/senangstart-icons/llms.txt`](https://bookklik-technologies.github.io/senangstart-icons/llms.txt)
|
|
36
|
+
|
|
37
|
+
## Next Steps
|
|
38
|
+
|
|
39
|
+
- [Installation](/guide/installation) - Learn different ways to install
|
|
40
|
+
- [Usage](/guide/usage) - Detailed usage instructions
|
|
41
|
+
- [Styling](/guide/styling) - Customize icon appearance
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# Installation
|
|
2
|
+
|
|
3
|
+
There are multiple ways to install and use SenangStart Icons in your project.
|
|
4
|
+
|
|
5
|
+
## CDN
|
|
6
|
+
|
|
7
|
+
The quickest way to get started is using the CDN:
|
|
8
|
+
|
|
9
|
+
```html
|
|
10
|
+
<script src="https://unpkg.com/@bookklik/senangstart-icons/dist/senangstart-icon.min.js"></script>
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Or with a specific version:
|
|
14
|
+
|
|
15
|
+
```html
|
|
16
|
+
<script src="https://unpkg.com/@bookklik/senangstart-icons@__PKG_VERSION__/dist/senangstart-icon.min.js"></script>
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## npm
|
|
20
|
+
|
|
21
|
+
Install via npm for use in bundled applications:
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
npm install @bookklik/senangstart-icons
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Then import in your JavaScript:
|
|
28
|
+
|
|
29
|
+
```js
|
|
30
|
+
import '@bookklik/senangstart-icons';
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Yarn
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
yarn add @bookklik/senangstart-icons
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## pnpm
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
pnpm add @bookklik/senangstart-icons
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Browser Support
|
|
46
|
+
|
|
47
|
+
SenangStart Icons uses Web Components and supports all modern browsers:
|
|
48
|
+
|
|
49
|
+
| Browser | Version |
|
|
50
|
+
|---------|---------|
|
|
51
|
+
| Chrome | 67+ |
|
|
52
|
+
| Firefox | 63+ |
|
|
53
|
+
| Safari | 10.1+ |
|
|
54
|
+
| Edge | 79+ |
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
# Styling
|
|
2
|
+
|
|
3
|
+
Customize the appearance of SenangStart Icons using CSS.
|
|
4
|
+
|
|
5
|
+
## CSS Custom Properties
|
|
6
|
+
|
|
7
|
+
Icons can be styled using CSS custom properties:
|
|
8
|
+
|
|
9
|
+
```css
|
|
10
|
+
ss-icon {
|
|
11
|
+
color: #333;
|
|
12
|
+
font-size: 24px;
|
|
13
|
+
}
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Inline Styles
|
|
17
|
+
|
|
18
|
+
Apply styles directly to icon elements:
|
|
19
|
+
|
|
20
|
+
```html
|
|
21
|
+
<ss-icon icon="home" style="color: blue; font-size: 24px;"></ss-icon>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## CSS Classes
|
|
25
|
+
|
|
26
|
+
Create reusable icon styles:
|
|
27
|
+
|
|
28
|
+
```css
|
|
29
|
+
.icon-primary {
|
|
30
|
+
color: #3498db;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.icon-danger {
|
|
34
|
+
color: #e74c3c;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.icon-success {
|
|
38
|
+
color: #2ecc71;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.icon-lg {
|
|
42
|
+
font-size: 32px;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.icon-sm {
|
|
46
|
+
font-size: 16px;
|
|
47
|
+
}
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
```html
|
|
51
|
+
<ss-icon icon="info" class="icon-primary"></ss-icon>
|
|
52
|
+
<ss-icon icon="x-circle" class="icon-danger"></ss-icon>
|
|
53
|
+
<ss-icon icon="check-circle" class="icon-success"></ss-icon>
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Hover Effects
|
|
57
|
+
|
|
58
|
+
Add interactive hover effects:
|
|
59
|
+
|
|
60
|
+
```css
|
|
61
|
+
ss-icon {
|
|
62
|
+
transition: color 0.2s ease, transform 0.2s ease;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
ss-icon:hover {
|
|
66
|
+
color: #3498db;
|
|
67
|
+
transform: scale(1.1);
|
|
68
|
+
}
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Animation
|
|
72
|
+
|
|
73
|
+
Animate icons with CSS:
|
|
74
|
+
|
|
75
|
+
```css
|
|
76
|
+
/* Spin animation */
|
|
77
|
+
@keyframes spin {
|
|
78
|
+
from { transform: rotate(0deg); }
|
|
79
|
+
to { transform: rotate(360deg); }
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.icon-spin {
|
|
83
|
+
animation: spin 1s linear infinite;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/* Pulse animation */
|
|
87
|
+
@keyframes pulse {
|
|
88
|
+
0%, 100% { opacity: 1; }
|
|
89
|
+
50% { opacity: 0.5; }
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.icon-pulse {
|
|
93
|
+
animation: pulse 2s ease-in-out infinite;
|
|
94
|
+
}
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
```html
|
|
98
|
+
<ss-icon icon="loader" class="icon-spin"></ss-icon>
|
|
99
|
+
<ss-icon icon="heart" class="icon-pulse"></ss-icon>
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
## Dark Mode
|
|
103
|
+
|
|
104
|
+
Support dark mode with CSS:
|
|
105
|
+
|
|
106
|
+
```css
|
|
107
|
+
ss-icon {
|
|
108
|
+
color: #333;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
@media (prefers-color-scheme: dark) {
|
|
112
|
+
ss-icon {
|
|
113
|
+
color: #fff;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/* Or with class-based dark mode */
|
|
118
|
+
.dark ss-icon {
|
|
119
|
+
color: #fff;
|
|
120
|
+
}
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
## Icon in Buttons
|
|
124
|
+
|
|
125
|
+
Style icons within buttons:
|
|
126
|
+
|
|
127
|
+
```css
|
|
128
|
+
.btn {
|
|
129
|
+
display: inline-flex;
|
|
130
|
+
align-items: center;
|
|
131
|
+
gap: 0.5rem;
|
|
132
|
+
padding: 0.5rem 1rem;
|
|
133
|
+
border: none;
|
|
134
|
+
border-radius: 4px;
|
|
135
|
+
cursor: pointer;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
.btn ss-icon {
|
|
139
|
+
flex-shrink: 0;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
.btn-icon-only {
|
|
143
|
+
padding: 0.5rem;
|
|
144
|
+
}
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
```html
|
|
148
|
+
<button class="btn">
|
|
149
|
+
<ss-icon icon="plus" style="font-size: 16px;"></ss-icon>
|
|
150
|
+
Add Item
|
|
151
|
+
</button>
|
|
152
|
+
|
|
153
|
+
<button class="btn btn-icon-only">
|
|
154
|
+
<ss-icon icon="menu"></ss-icon>
|
|
155
|
+
</button>
|
|
156
|
+
```
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# Usage
|
|
2
|
+
|
|
3
|
+
Learn how to use SenangStart Icons in your projects.
|
|
4
|
+
|
|
5
|
+
## Basic Usage
|
|
6
|
+
|
|
7
|
+
After including the library, you can use icons in two ways:
|
|
8
|
+
|
|
9
|
+
### 1. Web Component
|
|
10
|
+
|
|
11
|
+
Use the `<ss-icon>` custom element:
|
|
12
|
+
|
|
13
|
+
```html
|
|
14
|
+
<ss-icon icon="home"></ss-icon>
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
### 2. CSS Classes
|
|
18
|
+
|
|
19
|
+
Use the `<i>` tag with specific classes:
|
|
20
|
+
|
|
21
|
+
```html
|
|
22
|
+
<i class="ss ss-home"></i>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Attributes (`<ss-icon>`)
|
|
26
|
+
|
|
27
|
+
### icon
|
|
28
|
+
|
|
29
|
+
**Required.** The slug of the icon to display.
|
|
30
|
+
|
|
31
|
+
```html
|
|
32
|
+
<ss-icon icon="search"></ss-icon>
|
|
33
|
+
<ss-icon icon="user"></ss-icon>
|
|
34
|
+
<ss-icon icon="settings"></ss-icon>
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### thickness
|
|
38
|
+
|
|
39
|
+
Set the stroke width for the icon. Default is `1.5`.
|
|
40
|
+
|
|
41
|
+
```html
|
|
42
|
+
<ss-icon icon="circle" thickness="1"></ss-icon>
|
|
43
|
+
<ss-icon icon="circle" thickness="2"></ss-icon>
|
|
44
|
+
<ss-icon icon="circle" thickness="3"></ss-icon>
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Styling
|
|
48
|
+
|
|
49
|
+
SenangStart Icons are powered by currentColor, so they inherit the text color of their parent. You can style them using standard CSS.
|
|
50
|
+
|
|
51
|
+
### Sizing & Coloring
|
|
52
|
+
|
|
53
|
+
```html
|
|
54
|
+
<!-- Via utility classes (e.g. Tailwind) -->
|
|
55
|
+
<ss-icon icon="home" class="w-6 h-6 text-blue-500"></ss-icon>
|
|
56
|
+
|
|
57
|
+
<!-- Via style attribute -->
|
|
58
|
+
<ss-icon icon="heart" style="font-size: 32px; color: red;"></ss-icon>
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## In JavaScript
|
|
62
|
+
|
|
63
|
+
You can also manipulate icons programmatically:
|
|
64
|
+
|
|
65
|
+
```js
|
|
66
|
+
// Get icon element
|
|
67
|
+
const icon = document.querySelector('ss-icon');
|
|
68
|
+
|
|
69
|
+
// Change icon
|
|
70
|
+
icon.setAttribute('icon', 'check');
|
|
71
|
+
|
|
72
|
+
// Update thickness
|
|
73
|
+
icon.setAttribute('thickness', '2');
|
|
74
|
+
|
|
75
|
+
// Update styling
|
|
76
|
+
icon.style.color = 'green';
|
|
77
|
+
icon.style.fontSize = '48px';
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## Accessibility
|
|
81
|
+
|
|
82
|
+
For better accessibility, add `aria-label` or `aria-hidden`:
|
|
83
|
+
|
|
84
|
+
```html
|
|
85
|
+
<!-- Decorative icon -->
|
|
86
|
+
<ss-icon icon="star" aria-hidden="true"></ss-icon>
|
|
87
|
+
|
|
88
|
+
<!-- Meaningful icon -->
|
|
89
|
+
<ss-icon icon="warning" aria-label="Warning"></ss-icon>
|
|
90
|
+
|
|
91
|
+
<!-- Icon with text -->
|
|
92
|
+
<button>
|
|
93
|
+
<ss-icon icon="save" aria-hidden="true"></ss-icon>
|
|
94
|
+
Save
|
|
95
|
+
</button>
|
|
96
|
+
```
|