@nice2dev/icons 1.2.1 → 1.3.0
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/CHANGELOG.md +538 -0
- package/README.md +146 -134
- package/dist/cjs/NiceDesktopIconExporter.js +7 -3
- package/dist/cjs/NiceFaviconGenerator.js +6 -2
- package/dist/cjs/NiceIconPicker.js +36 -28
- package/dist/cjs/NiceIconPreview.js +3 -1
- package/dist/cjs/NiceIconSetCreator.js +7 -2
- package/dist/cjs/NtdIconBadge.js +18 -3
- package/dist/cjs/NtdIconMorph.js +3 -1
- package/dist/cjs/createIcon.js +10 -2
- package/dist/cjs/design-tokens.js +2 -0
- package/dist/cjs/iconMetadata.js +4 -0
- package/dist/cjs/iconParts.js +49 -0
- package/dist/cjs/icons/accessibility.js +12 -4
- package/dist/cjs/icons/actions.js +89 -25
- package/dist/cjs/icons/business.js +58 -28
- package/dist/cjs/icons/ecommerce.js +0 -20
- package/dist/cjs/icons/education.js +22 -9
- package/dist/cjs/icons/files.js +70 -56
- package/dist/cjs/icons/fun.js +39 -25
- package/dist/cjs/icons/gaming.js +29 -4
- package/dist/cjs/icons/health.js +11 -4
- package/dist/cjs/icons/index.js +63 -5
- package/dist/cjs/icons/input.js +120 -0
- package/dist/cjs/icons/legal.js +4 -9
- package/dist/cjs/icons/media.js +26 -11
- package/dist/cjs/icons/navigation.js +4 -2
- package/dist/cjs/icons/omniverk.js +19 -6
- package/dist/cjs/icons/realestate.js +10 -4
- package/dist/cjs/icons/saas.js +15 -4
- package/dist/cjs/icons/science.js +6 -3
- package/dist/cjs/icons/shapes.js +133 -31
- package/dist/cjs/icons/sports.js +6 -2
- package/dist/cjs/icons/ui.js +62 -20
- package/dist/cjs/icons/weather.js +18 -8
- package/dist/cjs/index.js +63 -5
- package/dist/cjs/nicetodev-icons.css +1 -1
- package/dist/cjs/resolver.js +55 -1
- package/dist/cjs/rsc.js +1 -1
- package/dist/cjs/utilities.js +4 -2
- package/dist/esm/NiceDesktopIconExporter.js +7 -3
- package/dist/esm/NiceFaviconGenerator.js +6 -2
- package/dist/esm/NiceIconPicker.js +37 -29
- package/dist/esm/NiceIconPreview.js +3 -1
- package/dist/esm/NiceIconSetCreator.js +7 -2
- package/dist/esm/NtdIconBadge.js +18 -3
- package/dist/esm/NtdIconMorph.js +3 -1
- package/dist/esm/createIcon.js +10 -2
- package/dist/esm/design-tokens.js +2 -0
- package/dist/esm/iconMetadata.js +4 -0
- package/dist/esm/iconParts.js +46 -0
- package/dist/esm/icons/accessibility.js +12 -4
- package/dist/esm/icons/actions.js +87 -26
- package/dist/esm/icons/business.js +58 -29
- package/dist/esm/icons/ecommerce.js +1 -19
- package/dist/esm/icons/education.js +22 -10
- package/dist/esm/icons/files.js +70 -56
- package/dist/esm/icons/fun.js +37 -25
- package/dist/esm/icons/gaming.js +29 -5
- package/dist/esm/icons/health.js +11 -4
- package/dist/esm/icons/index.js +10 -9
- package/dist/esm/icons/input.js +75 -0
- package/dist/esm/icons/legal.js +4 -9
- package/dist/esm/icons/media.js +26 -11
- package/dist/esm/icons/navigation.js +4 -2
- package/dist/esm/icons/omniverk.js +19 -6
- package/dist/esm/icons/realestate.js +10 -4
- package/dist/esm/icons/saas.js +15 -4
- package/dist/esm/icons/science.js +6 -3
- package/dist/esm/icons/shapes.js +128 -32
- package/dist/esm/icons/sports.js +6 -2
- package/dist/esm/icons/ui.js +62 -21
- package/dist/esm/icons/weather.js +18 -8
- package/dist/esm/index.js +10 -9
- package/dist/esm/nicetodev-icons.css +1 -1
- package/dist/esm/resolver.js +55 -1
- package/dist/esm/rsc.js +1 -1
- package/dist/esm/utilities.js +4 -2
- package/dist/types/design-tokens.d.ts +2 -0
- package/dist/types/iconParts.d.ts +19 -0
- package/dist/types/icons/actions.d.ts +3 -0
- package/dist/types/icons/business.d.ts +2 -0
- package/dist/types/icons/ecommerce.d.ts +0 -2
- package/dist/types/icons/education.d.ts +1 -0
- package/dist/types/icons/files.d.ts +2 -1
- package/dist/types/icons/fun.d.ts +6 -1
- package/dist/types/icons/gaming.d.ts +2 -0
- package/dist/types/icons/index.d.ts +10 -9
- package/dist/types/icons/input.d.ts +53 -0
- package/dist/types/icons/omniverk.d.ts +0 -2
- package/dist/types/icons/shapes.d.ts +6 -0
- package/dist/types/icons/ui.d.ts +1 -0
- package/dist/types/types.d.ts +6 -0
- package/package.json +3 -1
package/dist/esm/icons/fun.js
CHANGED
|
@@ -19,8 +19,9 @@ const NtdRocket = /* @__PURE__ */ createIcon({
|
|
|
19
19
|
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2C12 2 8 6 8 12c0 2 .5 4 1 5h6c.5-1 1-3 1-5 0-6-4-10-4-10z", fill: primaryColor }), jsx("path", { d: "M12 2C12 2 8 6 8 12c0 2 .5 4 1 5h6c.5-1 1-3 1-5 0-6-4-10-4-10z", fill: "white", opacity: "0.08" }), jsx("circle", { cx: "12", cy: "10", r: "2", fill: secondaryColor }), jsx("path", { d: "M8 12L5 15l1 3 2-2", fill: "#F59E0B" }), jsx("path", { d: "M16 12l3 3-1 3-2-2", fill: "#EF4444" }), jsx("path", { d: "M9 17h6l-1 5h-4l-1-5z", fill: "#8B5CF6" })] })),
|
|
20
20
|
},
|
|
21
21
|
});
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
/** The flat pad of the 16-bit era. The modern one is NtdGamepad (gaming.tsx). */
|
|
23
|
+
const NtdGamepadOldschool = /* @__PURE__ */ createIcon({
|
|
24
|
+
displayName: 'NtdGamepadOldschool',
|
|
24
25
|
paths: {
|
|
25
26
|
solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M6 11h4M8 9v4", stroke: accentColor, strokeWidth: strokeWidth, opacity: accentOpacity }), jsx("path", { d: "M2 12a4 4 0 014-4h12a4 4 0 014 4v2a4 4 0 01-4 4H6a4 4 0 01-4-4v-2z", fill: primaryColor }), jsx("path", { d: "M6 11h4M8 9v4", stroke: accentColor, strokeWidth: strokeWidth, opacity: accentOpacity }), jsx("circle", { cx: "15", cy: "10", r: "1", fill: accentColor, opacity: accentOpacity }), jsx("circle", { cx: "18", cy: "13", r: "1", fill: accentColor, opacity: accentOpacity })] })),
|
|
26
27
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M2 12a4 4 0 014-4h12a4 4 0 014 4v2a4 4 0 01-4 4H6a4 4 0 01-4-4v-2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M6 11h4M8 9v4", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("circle", { cx: "15", cy: "10", r: "1", fill: primaryColor }), jsx("circle", { cx: "18", cy: "13", r: "1", fill: primaryColor })] })),
|
|
@@ -73,24 +74,29 @@ const NtdDice = /* @__PURE__ */ createIcon({
|
|
|
73
74
|
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "3", fill: primaryColor }), jsx("rect", { x: "3", y: "3", width: "18", height: "18", rx: "3", fill: "white", opacity: "0.08" }), jsx("circle", { cx: "8", cy: "8", r: "1.5", fill: secondaryColor }), jsx("circle", { cx: "16", cy: "8", r: "1.5", fill: "#F59E0B" }), jsx("circle", { cx: "12", cy: "12", r: "1.5", fill: "#EF4444" }), jsx("circle", { cx: "8", cy: "16", r: "1.5", fill: "#8B5CF6" }), jsx("circle", { cx: "16", cy: "16", r: "1.5", fill: "#8B5CF6" })] })),
|
|
74
75
|
},
|
|
75
76
|
});
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
});
|
|
77
|
+
/** The two oval eyes every face shares, 6.8 apart. */
|
|
78
|
+
const FACE_EYES = 'M8.6 7.55a1.35 1.75 0 100 3.5 1.35 1.75 0 100-3.5zM15.4 7.55a1.35 1.75 0 100 3.5 1.35 1.75 0 100-3.5z';
|
|
79
|
+
/**
|
|
80
|
+
* An emotion face (NtdSmile, NtdSad, …): the r10 head and the eyes are the same in every one, an
|
|
81
|
+
* emotion is only its `mouth`, so a new one is one more call. The mouth is a stroke with round ends
|
|
82
|
+
* and follows the variant's weight.
|
|
83
|
+
*/
|
|
84
|
+
function faceIcon(displayName, mouth) {
|
|
85
|
+
return createIcon({
|
|
86
|
+
displayName,
|
|
87
|
+
paths: {
|
|
88
|
+
solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", fill: primaryColor }), jsx("path", { d: FACE_EYES, fill: accentColor, opacity: accentOpacity }), jsx("path", { d: mouth, stroke: accentColor, strokeOpacity: accentOpacity, strokeWidth: strokeWidth, strokeLinecap: "round", fill: "none" })] })),
|
|
89
|
+
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: FACE_EYES, fill: primaryColor }), jsx("path", { d: mouth, stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", fill: "none" })] })),
|
|
90
|
+
// Fills only: the tinted head, the face on it in primary — no ring around the head.
|
|
91
|
+
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: FACE_EYES, fill: primaryColor }), jsx("path", { d: mouth, stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", fill: "none" })] })),
|
|
92
|
+
vivid: ({ primaryColor, accentColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", fill: primaryColor }), jsx("path", { d: "M5.4 7.6a8 8 0 016.6-3.6", stroke: "white", strokeWidth: "1.6", strokeLinecap: "round", opacity: "0.35", fill: "none" }), jsx("path", { d: FACE_EYES, fill: accentColor }), jsx("path", { d: mouth, stroke: accentColor, strokeWidth: "2.2", strokeLinecap: "round", fill: "none" })] })),
|
|
93
|
+
},
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
const NtdSmile = /* @__PURE__ */ faceIcon('NtdSmile', 'M7 14c1.2 2.5 3 3.8 5 3.8s3.8-1.3 5-3.8');
|
|
97
|
+
/** @deprecated Renamed to {@link NtdSmile} in 1.3.0 — the same icon. */
|
|
98
|
+
const NtdSmiley = NtdSmile;
|
|
99
|
+
const NtdSad = /* @__PURE__ */ faceIcon('NtdSad', 'M7.8 17.3c1-1.75 2.4-2.65 4.2-2.65s3.2.9 4.2 2.65');
|
|
94
100
|
const NtdSkull = /* @__PURE__ */ createIcon({
|
|
95
101
|
displayName: 'NtdSkull',
|
|
96
102
|
paths: {
|
|
@@ -109,14 +115,20 @@ const NtdGhost = /* @__PURE__ */ createIcon({
|
|
|
109
115
|
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M12 2a8 8 0 00-8 8v12l3-3 3 3 2-2 2 2 3-3 3 3V10a8 8 0 00-8-8z", fill: primaryColor }), jsx("path", { d: "M12 2a8 8 0 00-8 8v12l3-3 3 3 2-2 2 2 3-3 3 3V10a8 8 0 00-8-8z", fill: "white", opacity: "0.08" }), jsx("circle", { cx: "9", cy: "10", r: "1.5", fill: secondaryColor }), jsx("circle", { cx: "15", cy: "10", r: "1.5", fill: "#F59E0B" })] })),
|
|
110
116
|
},
|
|
111
117
|
});
|
|
118
|
+
// NtdLightning: the step in the middle of the bolt slants, its two inner corners on a diagonal —
|
|
119
|
+
// they sat one above the other, so the duotone's two triangles met along a vertical line.
|
|
120
|
+
const LIGHTNING = '14,2 3,13.5 10.4,13.5 10,22 21,10.5 13.6,10.5';
|
|
112
121
|
const NtdLightning = /* @__PURE__ */ createIcon({
|
|
113
122
|
displayName: 'NtdLightning',
|
|
114
123
|
paths: {
|
|
115
|
-
solid: ({ primaryColor
|
|
116
|
-
outline: ({ primaryColor, strokeWidth }) => (jsx("polygon", { points:
|
|
117
|
-
|
|
118
|
-
|
|
124
|
+
solid: ({ primaryColor }) => jsx("polygon", { points: LIGHTNING, fill: primaryColor }),
|
|
125
|
+
outline: ({ primaryColor, strokeWidth }) => (jsx("polygon", { points: LIGHTNING, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })),
|
|
126
|
+
// the bolt's two triangles, a colour each, meeting along the slanted step — no outline
|
|
127
|
+
duotone: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("polygon", { points: "14,2 3,13.5 10.4,13.5 13.6,10.5", fill: primaryColor }), jsx("polygon", { points: "13.6,10.5 21,10.5 10,22 10.4,13.5", fill: secondaryColor })] })),
|
|
128
|
+
vivid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("polygon", { points: LIGHTNING, fill: primaryColor }), jsx("polygon", { points: LIGHTNING, fill: "white", opacity: "0.1" })] })),
|
|
119
129
|
},
|
|
120
130
|
});
|
|
131
|
+
/** @deprecated The same bolt as {@link NtdLightning} — use that. */
|
|
132
|
+
const NtdZap = NtdLightning;
|
|
121
133
|
|
|
122
|
-
export { NtdCrown, NtdDice, NtdDumpsterFire,
|
|
134
|
+
export { NtdCrown, NtdDice, NtdDumpsterFire, NtdGamepadOldschool, NtdGhost, NtdLightning, NtdPartyPopper, NtdPuzzle, NtdRocket, NtdSad, NtdSkull, NtdSmile, NtdSmiley, NtdTrophy, NtdZap };
|
package/dist/esm/icons/gaming.js
CHANGED
|
@@ -1,18 +1,42 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { createIcon } from '../createIcon.js';
|
|
3
|
+
import { within } from '../iconParts.js';
|
|
3
4
|
|
|
4
5
|
/* ────────────────────────────────────────────────────────────────────────────
|
|
5
6
|
CONTROLLERS & INPUT
|
|
6
7
|
───────────────────────────────────────────────────────────────────────────── */
|
|
8
|
+
// A modern pad in the layout of today's controllers: raised shoulders (the bumpers), grips that
|
|
9
|
+
// taper down and out, the left stick high with the d-pad below it, the face buttons high with the
|
|
10
|
+
// right stick below them. The old flat pad is NtdGamepadOldschool (fun.tsx).
|
|
11
|
+
const PAD_BODY = 'M12 6.2C9.9 6.2 8.6 5 6.4 5 4.3 5 3 6.1 2.4 8.1L1.1 15.9C.7 18.6 2.6 20.7 4.9 19.9 5.9 19.6 6.5 18.9 7.2 18L8.5 16.1C9 15.4 9.6 15.1 10.4 15.1H13.6C14.4 15.1 15 15.4 15.5 16.1L16.8 18C17.5 18.9 18.1 19.6 19.1 19.9 21.4 20.7 23.3 18.6 22.9 15.9L21.6 8.1C21 6.1 19.7 5 17.6 5 15.4 5 14.1 6.2 12 6.2Z';
|
|
12
|
+
/**
|
|
13
|
+
* The top edge of each shoulder, over the shoulder only: stroked wide and clipped to the body it
|
|
14
|
+
* is the bumper band; moved down by 0.9 it is the bumper's seam on the solid pad. (It ran from
|
|
15
|
+
* halfway down the sides, 1.35 down — too low and too long.)
|
|
16
|
+
*/
|
|
17
|
+
const PAD_BUMPERS = 'M2.6 7.8C3.2 6 4.5 5 6.4 5c1.4 0 2.4.4 3.2.8M21.4 7.8C20.8 6 19.5 5 17.6 5c-1.4 0-2.4.4-3.2.8';
|
|
18
|
+
const PAD_DPAD = 'M8.45 10.85h1.3v1.1h1.1v1.3h-1.1v1.1h-1.3v-1.1h-1.1v-1.3h1.1z';
|
|
19
|
+
/** The face buttons, Y (top), B, A, X clockwise, as [cx, cy]. */
|
|
20
|
+
const PAD_FACE = [
|
|
21
|
+
[17.8, 7.95],
|
|
22
|
+
[19.25, 9.4],
|
|
23
|
+
[17.8, 10.85],
|
|
24
|
+
[16.35, 9.4],
|
|
25
|
+
];
|
|
26
|
+
/** Xbox colours of Y, B, A, X — vivid only. */
|
|
27
|
+
const PAD_FACE_VIVID = ['#FACC15', '#EF4444', '#22C55E', '#3B82F6'];
|
|
7
28
|
const NtdGamepad = /* @__PURE__ */ createIcon({
|
|
8
29
|
displayName: 'NtdGamepad',
|
|
9
30
|
paths: {
|
|
10
|
-
solid: ({ primaryColor }) => (jsx("path", { d: "
|
|
11
|
-
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d:
|
|
12
|
-
|
|
13
|
-
|
|
31
|
+
solid: ({ primaryColor, accentColor, accentOpacity, uid }) => (jsxs(Fragment, { children: [jsx("path", { d: PAD_BODY, fill: primaryColor }), jsxs("g", { fill: accentColor, opacity: accentOpacity, children: [within(uid, 'b', jsx("path", { d: PAD_BODY }), jsx("path", { d: PAD_BUMPERS, stroke: accentColor, strokeWidth: "0.7", strokeLinecap: "round", fill: "none", transform: "translate(0 0.9)" })), jsx("circle", { cx: "6.2", cy: "9.4", r: "2.1" }), jsx("circle", { cx: "14.9", cy: "12.6", r: "1.9" }), jsx("path", { d: PAD_DPAD }), PAD_FACE.map(([cx, cy]) => (jsx("circle", { cx: cx, cy: cy, r: "0.78" }, `${cx},${cy}`))), jsx("circle", { cx: "12", cy: "8.3", r: "1.15" }), jsx("circle", { cx: "11.1", cy: "10.4", r: "0.5" }), jsx("circle", { cx: "12.9", cy: "10.4", r: "0.5" })] })] })),
|
|
32
|
+
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: PAD_BODY, stroke: primaryColor, strokeWidth: strokeWidth, strokeLinejoin: "round", fill: "none" }), jsxs("g", { stroke: primaryColor, strokeWidth: strokeWidth * 0.6, fill: "none", children: [jsx("circle", { cx: "6.2", cy: "9.4", r: "1.7" }), jsx("circle", { cx: "14.9", cy: "12.6", r: "1.5" }), jsx("path", { d: "M9.1 11.15v2.9M7.65 12.6h2.9", strokeLinecap: "round" })] }), jsxs("g", { fill: primaryColor, children: [PAD_FACE.map(([cx, cy]) => (jsx("circle", { cx: cx, cy: cy, r: "0.7" }, `${cx},${cy}`))), jsx("circle", { cx: "12", cy: "8.5", r: "0.9" })] })] })),
|
|
33
|
+
// Fills only: the tinted body, the bumpers and every control in primary.
|
|
34
|
+
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, uid }) => (jsxs(Fragment, { children: [jsx("path", { d: PAD_BODY, fill: secondaryColor, opacity: secondaryOpacity }), jsxs("g", { fill: primaryColor, children: [within(uid, 'b', jsx("path", { d: PAD_BODY }), jsx("path", { d: PAD_BUMPERS, stroke: primaryColor, strokeWidth: "2.6", fill: "none" })), jsx("circle", { cx: "6.2", cy: "9.4", r: "2.1" }), jsx("circle", { cx: "14.9", cy: "12.6", r: "1.9" }), jsx("path", { d: PAD_DPAD }), PAD_FACE.map(([cx, cy]) => (jsx("circle", { cx: cx, cy: cy, r: "0.78" }, `${cx},${cy}`))), jsx("circle", { cx: "12", cy: "8.3", r: "1.15" })] })] })),
|
|
35
|
+
vivid: ({ primaryColor, secondaryColor, uid }) => (jsxs(Fragment, { children: [jsx("path", { d: PAD_BODY, fill: primaryColor }), within(uid, 'b', jsx("path", { d: PAD_BODY }), jsx("path", { d: PAD_BUMPERS, stroke: secondaryColor, strokeWidth: "2.6", fill: "none" })), jsxs("g", { fill: secondaryColor, children: [jsx("circle", { cx: "6.2", cy: "9.4", r: "2.1" }), jsx("circle", { cx: "14.9", cy: "12.6", r: "1.9" }), jsx("path", { d: PAD_DPAD })] }), PAD_FACE.map(([cx, cy], i) => (jsx("circle", { cx: cx, cy: cy, r: "0.78", fill: PAD_FACE_VIVID[i] }, `${cx},${cy}`))), jsx("circle", { cx: "12", cy: "8.3", r: "1.15", fill: "white" }), jsx("circle", { cx: "11.1", cy: "10.4", r: "0.5", fill: "white", opacity: "0.8" }), jsx("circle", { cx: "12.9", cy: "10.4", r: "0.5", fill: "white", opacity: "0.8" })] })),
|
|
14
36
|
},
|
|
15
37
|
});
|
|
38
|
+
/** @deprecated Renamed to {@link NtdGamepad} in 1.3.0 — the same icon. */
|
|
39
|
+
const NtdGamepadController = NtdGamepad;
|
|
16
40
|
const NtdJoystick = /* @__PURE__ */ createIcon({
|
|
17
41
|
displayName: 'NtdJoystick',
|
|
18
42
|
paths: {
|
|
@@ -170,4 +194,4 @@ const gamingIcons = {
|
|
|
170
194
|
NtdPotion,
|
|
171
195
|
};
|
|
172
196
|
|
|
173
|
-
export { NtdDice, NtdDiscord, NtdGamepad, NtdHealthBar, NtdJoystick, NtdLeaderboard, NtdPotion, NtdShield, NtdStar, NtdSword, NtdTrophy, NtdTwitch, NtdVrHeadset, NtdXpBar, NtdYoutubeLive, gamingIcons };
|
|
197
|
+
export { NtdDice, NtdDiscord, NtdGamepad, NtdGamepadController, NtdHealthBar, NtdJoystick, NtdLeaderboard, NtdPotion, NtdShield, NtdStar, NtdSword, NtdTrophy, NtdTwitch, NtdVrHeadset, NtdXpBar, NtdYoutubeLive, gamingIcons };
|
package/dist/esm/icons/health.js
CHANGED
|
@@ -100,13 +100,20 @@ const NtdEgg = /* @__PURE__ */ createIcon({
|
|
|
100
100
|
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("ellipse", { cx: "12", cy: "14", rx: "7", ry: "8", fill: primaryColor }), jsx("ellipse", { cx: "12", cy: "14", rx: "7", ry: "8", fill: "white", opacity: "0.1" })] })),
|
|
101
101
|
},
|
|
102
102
|
});
|
|
103
|
+
// NtdHamburger: even layers of one width — a low domed top bun, a thin wavy band of sauce, the
|
|
104
|
+
// patty and the bottom bun — each standing apart. (The top was a tall half circle and the bottom
|
|
105
|
+
// bun wider than everything above it.) The bun is plain and the sauce half as tall as before.
|
|
106
|
+
const BURGER_TOP = 'M3 9.4C3 6.4 7 4 12 4s9 2.4 9 5.4a1 1 0 01-1 1H4a1 1 0 01-1-1z';
|
|
107
|
+
const BURGER_SAUCE = 'M3 12c1.5-.5 3-.5 4.5 0s3 .5 4.5 0 3-.5 4.5 0 3 .5 4.5 0';
|
|
108
|
+
const BURGER_PATTY = { x: 2.5, y: 13.6, width: 19, height: 2.9, rx: 1.45 };
|
|
109
|
+
const BURGER_BOTTOM = 'M3 17.6h18v1.4a2 2 0 01-2 2H5a2 2 0 01-2-2z';
|
|
103
110
|
const NtdHamburger = /* @__PURE__ */ createIcon({
|
|
104
111
|
displayName: 'NtdHamburger',
|
|
105
112
|
paths: {
|
|
106
|
-
solid: ({ primaryColor, secondaryColor
|
|
107
|
-
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d:
|
|
108
|
-
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d:
|
|
109
|
-
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d:
|
|
113
|
+
solid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: BURGER_TOP, fill: primaryColor }), jsx("path", { d: BURGER_SAUCE, stroke: secondaryColor, strokeWidth: "1.1", fill: "none" }), jsx("rect", { ...BURGER_PATTY, fill: primaryColor }), jsx("path", { d: BURGER_BOTTOM, fill: primaryColor })] })),
|
|
114
|
+
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: BURGER_TOP, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: BURGER_SAUCE, stroke: primaryColor, strokeWidth: strokeWidth * 0.55, fill: "none" }), jsx("rect", { ...BURGER_PATTY, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: BURGER_BOTTOM, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
|
|
115
|
+
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: BURGER_TOP, fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: BURGER_TOP, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: BURGER_SAUCE, stroke: primaryColor, strokeWidth: strokeWidth * 0.55, fill: "none" }), jsx("rect", { ...BURGER_PATTY, fill: primaryColor }), jsx("path", { d: BURGER_BOTTOM, fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: BURGER_BOTTOM, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
|
|
116
|
+
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: BURGER_TOP, fill: primaryColor }), jsx("path", { d: BURGER_TOP, fill: "white", opacity: "0.12" }), jsx("path", { d: BURGER_SAUCE, stroke: secondaryColor, strokeWidth: "1.1", fill: "none" }), jsx("rect", { ...BURGER_PATTY, fill: primaryColor }), jsx("rect", { ...BURGER_PATTY, fill: "black", opacity: "0.2" }), jsx("path", { d: BURGER_BOTTOM, fill: primaryColor })] })),
|
|
110
117
|
},
|
|
111
118
|
});
|
|
112
119
|
const NtdDna = /* @__PURE__ */ createIcon({
|
package/dist/esm/icons/index.js
CHANGED
|
@@ -1,31 +1,32 @@
|
|
|
1
1
|
export { NtdArrowDown, NtdArrowLeft, NtdArrowRight, NtdArrowUp, NtdChevronDown, NtdChevronLeft, NtdChevronRight, NtdChevronUp, NtdClose, NtdExternalLink, NtdMenu, NtdMoreHorizontal, NtdMoreVertical, NtdRefresh } from './navigation.js';
|
|
2
|
-
export { NtdCheck, NtdClipboard, NtdCopy, NtdDownload, NtdEdit, NtdFilter, NtdLink, NtdLock, NtdLogIn, NtdLogOut, NtdMinus, NtdPlus, NtdPrint, NtdRedo, NtdReply, NtdSave, NtdSearch, NtdSettings, NtdShare, NtdSort, NtdTrash, NtdUndo, NtdUnlock, NtdUpload, NtdZoomIn, NtdZoomOut } from './actions.js';
|
|
3
|
-
export { NtdBackspace, NtdBell, NtdBookmark, NtdCalendar, NtdClock, NtdCursor, NtdError, NtdEye, NtdEyeOff, NtdFlag, NtdGlobe, NtdHeart, NtdHelp, NtdHome, NtdInfo, NtdMap, NtdMoon, NtdPin, NtdShield, NtdStar, NtdSuccess, NtdSun, NtdTag, NtdThumbDown, NtdThumbUp, NtdUser, NtdUsers, NtdWarning, NtdWireframe } from './ui.js';
|
|
2
|
+
export { NtdCheck, NtdClipboard, NtdCopy, NtdDownload, NtdEdit, NtdEditDetail, NtdFilter, NtdGroup, NtdLink, NtdLock, NtdLogIn, NtdLogOut, NtdMinus, NtdPlus, NtdPrint, NtdRedo, NtdReply, NtdSave, NtdSearch, NtdSettings, NtdShare, NtdSort, NtdTrash, NtdUndo, NtdUngroup, NtdUnlock, NtdUpload, NtdZoomIn, NtdZoomOut } from './actions.js';
|
|
3
|
+
export { NtdAdmin, NtdBackspace, NtdBell, NtdBookmark, NtdCalendar, NtdClock, NtdCursor, NtdError, NtdEye, NtdEyeOff, NtdFlag, NtdGlobe, NtdHeart, NtdHelp, NtdHome, NtdInfo, NtdMap, NtdMoon, NtdPin, NtdShield, NtdStar, NtdSuccess, NtdSun, NtdTag, NtdThumbDown, NtdThumbUp, NtdUser, NtdUsers, NtdWarning, NtdWireframe } from './ui.js';
|
|
4
4
|
export { NtdBiodegradable, NtdCarbonFootprint, NtdCo2, NtdCompost, NtdEcoFriendly, NtdEvCharger, NtdHydropower, NtdNetZero, NtdOrganic, NtdPlantTree, NtdRecycle, NtdSolarPanel, NtdTrashSort, NtdWildlife, NtdWindTurbine, sustainabilityIcons } from './sustainability.js';
|
|
5
5
|
export { NtdAccessibility, NtdAssistiveTech, NtdAudioDescription, NtdBlind, NtdBraille, NtdClosedCaptions, NtdDeaf, NtdDyslexia, NtdEasyRead, NtdHearingAid, NtdScreenReader, NtdSignLanguage, NtdWheelchair, accessibilityIcons } from './accessibility.js';
|
|
6
6
|
export { NtdAudit, NtdCcpa, NtdCertified, NtdCompliance, NtdContract, NtdCookieConsent, NtdCopyright, NtdGdpr, NtdLegalDocument, NtdPatent, NtdPrivacyPolicy, NtdTermsOfService, NtdTrademark, legalIcons } from './legal.js';
|
|
7
7
|
export { NtdBluetooth, NtdBrush, NtdCamera, NtdChat, NtdImage, NtdInbox, NtdMail, NtdMicrophone, NtdMicrophoneOff, NtdMusic, NtdNotification, NtdPalette, NtdPause, NtdPenTool, NtdPhone, NtdPlay, NtdSend, NtdSkipBack, NtdSkipForward, NtdSpline, NtdStop, NtdVideo, NtdVolume, NtdVolumeMute, NtdWifi } from './media.js';
|
|
8
|
-
export { NtdActivity, NtdArchive, NtdAward, NtdBarChart, NtdCart, NtdCloud, NtdCloudDownload, NtdCloudUpload, NtdCode, NtdCoffee, NtdCpu, NtdCreditCard, NtdDatabase, NtdFile, NtdFileText, NtdFolder, NtdFolderOpen, NtdGit, NtdGrid, NtdKey, NtdLayers, NtdList, NtdMonitor, NtdPackage, NtdPieChart, NtdSmartphone, NtdTable, NtdTarget, NtdTerminal, NtdTruck
|
|
9
|
-
export { NtdCrown, NtdDice, NtdDumpsterFire,
|
|
8
|
+
export { NtdActivity, NtdArchive, NtdAward, NtdBarChart, NtdCart, NtdCloud, NtdCloudDownload, NtdCloudUpload, NtdCode, NtdCoffee, NtdCpu, NtdCreditCard, NtdDatabase, NtdFile, NtdFileText, NtdFolder, NtdFolderOpen, NtdGit, NtdGrid, NtdKey, NtdLayers, NtdList, NtdMonitor, NtdPackage, NtdPieChart, NtdShoppingCart, NtdSmartphone, NtdTable, NtdTarget, NtdTerminal, NtdTruck } from './files.js';
|
|
9
|
+
export { NtdCrown, NtdDice, NtdDumpsterFire, NtdGamepadOldschool, NtdGhost, NtdLightning, NtdPartyPopper, NtdPuzzle, NtdRocket, NtdSad, NtdSkull, NtdSmile, NtdSmiley, NtdTrophy, NtdZap } from './fun.js';
|
|
10
10
|
export { NtdAnchor, NtdBug, NtdCompass, NtdDroplet, NtdFeather, NtdFire, NtdFlower, NtdLeaf, NtdMountain, NtdRain, NtdSnow, NtdSnowflake, NtdSunrise, NtdSunset, NtdThermometer, NtdThunderstorm, NtdTree, NtdUmbrella, NtdWave, NtdWind } from './weather.js';
|
|
11
|
-
export { NtdArrowDownCircle, NtdArrowLeftCircle, NtdArrowRightCircle, NtdArrowUpCircle, NtdCircle, NtdCornerDownLeft, NtdCornerDownRight, NtdCornerUpLeft, NtdCornerUpRight, NtdCross, NtdDiamond, NtdHexagon, NtdMaximize, NtdMinimize, NtdMove, NtdOctagon, NtdPentagon, NtdRepeat, NtdShuffle, NtdSquare, NtdStar4, NtdTriangle } from './shapes.js';
|
|
12
|
-
export { NtdBank, NtdBarcode, NtdBriefcase, NtdCalculator, NtdClipboardCheck, NtdCoins, NtdDollar, NtdInvoice, NtdKanban, NtdMilestone, NtdPercent, NtdPiggyBank, NtdPresentation, NtdReceipt, NtdStore, NtdTrendDown, NtdTrendUp, NtdWallet } from './business.js';
|
|
11
|
+
export { NtdAngleBisector, NtdArrowDownCircle, NtdArrowLeftCircle, NtdArrowRightCircle, NtdArrowUpCircle, NtdCircle, NtdCornerDownLeft, NtdCornerDownRight, NtdCornerUpLeft, NtdCornerUpRight, NtdCross, NtdDiamond, NtdHexagon, NtdMaximize, NtdMidpoint, NtdMinimize, NtdMove, NtdOctagon, NtdParallel, NtdPentagon, NtdPerpendicular, NtdPoint, NtdRepeat, NtdSegment, NtdShuffle, NtdSquare, NtdStar4, NtdTriangle } from './shapes.js';
|
|
12
|
+
export { NtdBank, NtdBarcode, NtdBriefcase, NtdCalculator, NtdClipboardCheck, NtdCoins, NtdDollar, NtdInvoice, NtdInvoiceDoc, NtdKanban, NtdMilestone, NtdPercent, NtdPiggyBank, NtdPresentation, NtdReceipt, NtdStore, NtdTrendDown, NtdTrendUp, NtdWallet } from './business.js';
|
|
13
13
|
export { NtdAtSign, NtdBellRing, NtdBubble, NtdMegaphone, NtdPhoneOff, NtdQrCode, NtdThumbsDown, NtdThumbsUp } from './social.js';
|
|
14
14
|
export { NtdAIBrain, NtdAstroLogo, NtdBattery, NtdBlueprint, NtdBrackets, NtdBugDev, NtdBunLogo, NtdComponent, NtdDataMesh, NtdDenoLogo, NtdDeploy, NtdFeatureFlag, NtdFlow, NtdForge, NtdGateway, NtdGitBranch, NtdGitCommit, NtdGitMerge, NtdHash, NtdNeural, NtdNextJsLogo, NtdNodes, NtdPipeline, NtdPrototype, NtdQwikLogo, NtdServer, NtdSlash, NtdSolidJsLogo, NtdSvelteLogo, NtdTauriLogo, NtdViteLogo } from './devtech.js';
|
|
15
|
-
export { NtdCartAdd, NtdCartRemove, NtdCheckout, NtdCompare, NtdCoupon, NtdDiscount, NtdGiftCard,
|
|
15
|
+
export { NtdCartAdd, NtdCartRemove, NtdCheckout, NtdCompare, NtdCoupon, NtdDiscount, NtdGiftCard, NtdPayment, NtdPromoTag, NtdRefund, NtdReturn, NtdShipping, NtdStorefront, NtdWishlist } from './ecommerce.js';
|
|
16
16
|
export { NtdAirdrop, NtdBitcoin, NtdBlockchain, NtdCryptoWallet, NtdDeFi, NtdEthereum, NtdExchange, NtdGasFee, NtdLedger, NtdMining, NtdNFT, NtdSmartContract, NtdStaking, NtdToken } from './fintech.js';
|
|
17
17
|
export { NtdAPI, NtdAnalytics, NtdBilling, NtdDashboard, NtdIntegration, NtdMetrics, NtdQuota, NtdSubscription, NtdTeamwork, NtdTenant, NtdUptime, NtdUsage, NtdWebhook } from './saas.js';
|
|
18
18
|
export { NtdDoorbell, NtdMotionSensor, NtdRouter, NtdSmartBulb, NtdSmartCamera, NtdSmartHub, NtdSmartLock, NtdSmartPlug, NtdSmartSpeaker, NtdSmartSwitch, NtdTemperatureSensor, NtdThermostat, NtdVoiceAssistant } from './smarthome.js';
|
|
19
19
|
export { NtdApple, NtdBandaid, NtdCake, NtdDna, NtdEgg, NtdGlass, NtdHamburger, NtdHeartPulse, NtdPill, NtdPizza, NtdStethoscope, NtdSyringe, NtdWeight } from './health.js';
|
|
20
20
|
export { NtdNiceToDev, NtdOmniVerk, NtdOmniVerkAnimated, NtdOmniVerkBadge, NtdOmniVerkLogo, NtdOmniVerkSpinner, NtdOmniVerkWatermark } from './brand.js';
|
|
21
|
-
export { NtdDice as NtdDiceGaming, NtdDiscord, NtdGamepad
|
|
21
|
+
export { NtdDice as NtdDiceGaming, NtdDiscord, NtdGamepad, NtdGamepadController, NtdHealthBar, NtdJoystick, NtdLeaderboard, NtdPotion, NtdShield as NtdShieldGaming, NtdStar as NtdStarGaming, NtdSword, NtdTrophy as NtdTrophyGaming, NtdTwitch, NtdVrHeadset, NtdXpBar, NtdYoutubeLive, gamingIcons } from './gaming.js';
|
|
22
22
|
export { NtdVoiceAssistant as NtdAIAssistant, NtdBrain, NtdChatbot, NtdDataset, NtdDeepLearning, NtdGradient, NtdInference, NtdMagicWand, NtdModel, NtdNeuralNetwork, NtdPrompt, NtdRobot, NtdSparkle, NtdTensor, NtdTraining, aiIcons } from './ai.js';
|
|
23
|
-
export { NtdBackpack, NtdBook, NtdCalculator as NtdCalculatorEdu, NtdCertificate, NtdDiploma, NtdExam, NtdFlashcard, NtdGraduationCap, NtdNotebook, NtdOnlineCourse, NtdOpenBook, NtdPen, NtdPencil, NtdQuiz, NtdSchool, NtdUniversity, NtdWebinar, educationIcons } from './education.js';
|
|
23
|
+
export { NtdBackpack, NtdBook, NtdBookBookmark, NtdCalculator as NtdCalculatorEdu, NtdCertificate, NtdDiploma, NtdExam, NtdFlashcard, NtdGraduationCap, NtdNotebook, NtdOnlineCourse, NtdOpenBook, NtdPen, NtdPencil, NtdQuiz, NtdSchool, NtdUniversity, NtdWebinar, educationIcons } from './education.js';
|
|
24
24
|
export { NtdAtom, NtdBeaker, NtdDna as NtdDnaScience, NtdExperiment, NtdFlask, NtdHypothesis, NtdMagnet, NtdMicroscope, NtdMolecule, NtdPeriodictable, NtdPetriDish, NtdPlanet, NtdResearch, NtdRocket as NtdRocketScience, NtdTelescope, NtdTestTube, scienceIcons } from './science.js';
|
|
25
25
|
export { NtdApartment, NtdBathroom, NtdBedroom, NtdCondo, NtdFloorPlan, NtdForRent, NtdForSale, NtdGarage, NtdHouse as NtdHouseRealEstate, NtdKey as NtdKeyRealEstate, NtdMortgage, NtdOfficeBuilding, NtdPool, NtdSold, NtdSquareMeters, NtdVilla, NtdWarehouse, realestateIcons } from './realestate.js';
|
|
26
26
|
export { NtdBeer, NtdBurger, NtdChefHat, NtdCocktail, NtdCoffee as NtdCoffeeFood, NtdDelivery, NtdForkKnife, NtdHotdog, NtdPizza as NtdPizzaFood, NtdPlate, NtdRecipe, NtdRestaurant, NtdSoda, NtdSushi, NtdTaco, NtdWine, foodIcons } from './food.js';
|
|
27
27
|
export { NtdBeach, NtdBike, NtdBus, NtdCamping, NtdCar, NtdCompassRose, NtdHotel, NtdLuggage, NtdPassport, NtdPlane, NtdPlaneTakeoff, NtdShip, NtdTaxi, NtdTicket, NtdTrain, travelIcons } from './travel.js';
|
|
28
28
|
export { NtdBasketball, NtdCycling, NtdDumbbell, NtdGolf, NtdMedal, NtdPodium, NtdRunning, NtdSoccerBall, NtdStopwatch, NtdSwimming, NtdTarget as NtdTargetSports, NtdTennis, NtdWhistle, NtdYoga, sportsIcons } from './sports.js';
|
|
29
29
|
export { NtdAlert, NtdAlertBell, NtdFood, NtdGym, NtdInsurance, NtdLab, NtdMeal, NtdProduct, NtdProject, NtdShipment, NtdTax, NtdWorkflow } from './omniverk.js';
|
|
30
|
+
export { NtdKeyBackspace, NtdKeyCaps, NtdKeyCommand, NtdKeyControl, NtdKeyEnter, NtdKeyOption, NtdKeyShift, NtdKeySpace, NtdKeyTab, NtdPadDpad, NtdPadDpadDown, NtdPadDpadLeft, NtdPadDpadRight, NtdPadDpadUp, NtdPadGenericEast, NtdPadGenericNorth, NtdPadGenericSouth, NtdPadGenericWest, NtdPadHome, NtdPadLb, NtdPadLt, NtdPadNintendoA, NtdPadNintendoB, NtdPadNintendoX, NtdPadNintendoY, NtdPadPlaystationCircle, NtdPadPlaystationCross, NtdPadPlaystationSquare, NtdPadPlaystationTriangle, NtdPadRb, NtdPadRt, NtdPadSelect, NtdPadStart, NtdPadStickLeft, NtdPadStickLeftPress, NtdPadStickRight, NtdPadStickRightPress, NtdPadXboxA, NtdPadXboxB, NtdPadXboxX, NtdPadXboxY, NtdRemoteBack, NtdRemoteMenu, NtdRemoteOk } from './input.js';
|
|
30
31
|
|
|
31
32
|
// Navigation
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { createIcon } from '../createIcon.js';
|
|
3
|
+
|
|
4
|
+
const RING = 'M12 3a9 9 0 1 0 0 18a9 9 0 1 0 0 -18z';
|
|
5
|
+
/** A round button: a disc with its symbol. */
|
|
6
|
+
function discGlyph(displayName, symbol) {
|
|
7
|
+
return createIcon({
|
|
8
|
+
displayName,
|
|
9
|
+
paths: {
|
|
10
|
+
solid: ({ primaryColor, accentColor, accentOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10", fill: primaryColor }), jsx("path", { d: symbol, stroke: accentColor, strokeOpacity: accentOpacity, strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round", fill: "none" })] })),
|
|
11
|
+
outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: `${RING} ${symbol}`, stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round", fill: "none" })),
|
|
12
|
+
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "9", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: `${RING} ${symbol}`, stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round", fill: "none" })] })),
|
|
13
|
+
vivid: ({ primaryColor, accentColor }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "10.5", fill: primaryColor }), jsx("path", { d: symbol, stroke: accentColor, strokeWidth: "2.4", strokeLinecap: "round", strokeLinejoin: "round", fill: "none" })] })),
|
|
14
|
+
},
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
/** Any other glyph: one stroked shape, bolder when solid, tinted when duotone. */
|
|
18
|
+
function shapeGlyph(displayName, d) {
|
|
19
|
+
return createIcon({
|
|
20
|
+
displayName,
|
|
21
|
+
paths: {
|
|
22
|
+
solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: d, stroke: primaryColor, strokeWidth: strokeWidth * 1.3, strokeLinecap: "round", strokeLinejoin: "round", fill: "none" })),
|
|
23
|
+
outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: d, stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round", fill: "none" })),
|
|
24
|
+
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsx("path", { d: d, stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round", fill: secondaryColor, fillOpacity: secondaryOpacity })),
|
|
25
|
+
vivid: ({ primaryColor }) => (jsx("path", { d: d, stroke: primaryColor, strokeWidth: "2.4", strokeLinecap: "round", strokeLinejoin: "round", fill: "none" })),
|
|
26
|
+
},
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
const NtdPadXboxA = /* @__PURE__ */ discGlyph('NtdPadXboxA', 'M9.25 16l2.75-8 2.75 8 M10.2 13.25h3.6');
|
|
30
|
+
const NtdPadXboxB = /* @__PURE__ */ discGlyph('NtdPadXboxB', 'M9.75 8v8 M9.75 8h2.5a2 2 0 0 1 0 4h-2.5 M9.75 12h3a2 2 0 0 1 0 4h-3');
|
|
31
|
+
const NtdPadXboxX = /* @__PURE__ */ discGlyph('NtdPadXboxX', 'M9.5 8l5 8 M14.5 8l-5 8');
|
|
32
|
+
const NtdPadXboxY = /* @__PURE__ */ discGlyph('NtdPadXboxY', 'M9.5 8l2.5 4 2.5-4 M12 12v4');
|
|
33
|
+
const NtdPadNintendoA = /* @__PURE__ */ discGlyph('NtdPadNintendoA', 'M9.25 16l2.75-8 2.75 8 M10.2 13.25h3.6');
|
|
34
|
+
const NtdPadNintendoB = /* @__PURE__ */ discGlyph('NtdPadNintendoB', 'M9.75 8v8 M9.75 8h2.5a2 2 0 0 1 0 4h-2.5 M9.75 12h3a2 2 0 0 1 0 4h-3');
|
|
35
|
+
const NtdPadNintendoX = /* @__PURE__ */ discGlyph('NtdPadNintendoX', 'M9.5 8l5 8 M14.5 8l-5 8');
|
|
36
|
+
const NtdPadNintendoY = /* @__PURE__ */ discGlyph('NtdPadNintendoY', 'M9.5 8l2.5 4 2.5-4 M12 12v4');
|
|
37
|
+
const NtdPadPlaystationCross = /* @__PURE__ */ discGlyph('NtdPadPlaystationCross', 'M9 9l6 6 M15 9l-6 6');
|
|
38
|
+
const NtdPadPlaystationCircle = /* @__PURE__ */ discGlyph('NtdPadPlaystationCircle', 'M12 8.25a3.75 3.75 0 1 0 0 7.5a3.75 3.75 0 1 0 0 -7.5z');
|
|
39
|
+
const NtdPadPlaystationSquare = /* @__PURE__ */ discGlyph('NtdPadPlaystationSquare', 'M8.5 8.5h7v7h-7z');
|
|
40
|
+
const NtdPadPlaystationTriangle = /* @__PURE__ */ discGlyph('NtdPadPlaystationTriangle', 'M12 8l4.5 7.5h-9z');
|
|
41
|
+
const NtdPadGenericNorth = /* @__PURE__ */ shapeGlyph('NtdPadGenericNorth', 'M12 3a3 3 0 1 0 0 6a3 3 0 1 0 0 -6z M12 6h.01 M18 10.25a1.75 1.75 0 1 0 0 3.5a1.75 1.75 0 1 0 0 -3.5z M6 10.25a1.75 1.75 0 1 0 0 3.5a1.75 1.75 0 1 0 0 -3.5z M12 16.25a1.75 1.75 0 1 0 0 3.5a1.75 1.75 0 1 0 0 -3.5z');
|
|
42
|
+
const NtdPadGenericEast = /* @__PURE__ */ shapeGlyph('NtdPadGenericEast', 'M12 4.25a1.75 1.75 0 1 0 0 3.5a1.75 1.75 0 1 0 0 -3.5z M18 9a3 3 0 1 0 0 6a3 3 0 1 0 0 -6z M18 12h.01 M6 10.25a1.75 1.75 0 1 0 0 3.5a1.75 1.75 0 1 0 0 -3.5z M12 16.25a1.75 1.75 0 1 0 0 3.5a1.75 1.75 0 1 0 0 -3.5z');
|
|
43
|
+
const NtdPadGenericWest = /* @__PURE__ */ shapeGlyph('NtdPadGenericWest', 'M12 4.25a1.75 1.75 0 1 0 0 3.5a1.75 1.75 0 1 0 0 -3.5z M18 10.25a1.75 1.75 0 1 0 0 3.5a1.75 1.75 0 1 0 0 -3.5z M6 9a3 3 0 1 0 0 6a3 3 0 1 0 0 -6z M6 12h.01 M12 16.25a1.75 1.75 0 1 0 0 3.5a1.75 1.75 0 1 0 0 -3.5z');
|
|
44
|
+
const NtdPadGenericSouth = /* @__PURE__ */ shapeGlyph('NtdPadGenericSouth', 'M12 4.25a1.75 1.75 0 1 0 0 3.5a1.75 1.75 0 1 0 0 -3.5z M18 10.25a1.75 1.75 0 1 0 0 3.5a1.75 1.75 0 1 0 0 -3.5z M6 10.25a1.75 1.75 0 1 0 0 3.5a1.75 1.75 0 1 0 0 -3.5z M12 15a3 3 0 1 0 0 6a3 3 0 1 0 0 -6z M12 18h.01');
|
|
45
|
+
const NtdPadLb = /* @__PURE__ */ shapeGlyph('NtdPadLb', 'M6 9h12a3 3 0 0 1 0 6H6a3 3 0 0 1 0-6z M7.5 12h.01');
|
|
46
|
+
const NtdPadRb = /* @__PURE__ */ shapeGlyph('NtdPadRb', 'M6 9h12a3 3 0 0 1 0 6H6a3 3 0 0 1 0-6z M16.5 12h.01');
|
|
47
|
+
const NtdPadLt = /* @__PURE__ */ shapeGlyph('NtdPadLt', 'M9 3h6a3 3 0 0 1 3 3v7a6 6 0 0 1-12 0V6a3 3 0 0 1 3-3z M9.5 7h.01');
|
|
48
|
+
const NtdPadRt = /* @__PURE__ */ shapeGlyph('NtdPadRt', 'M9 3h6a3 3 0 0 1 3 3v7a6 6 0 0 1-12 0V6a3 3 0 0 1 3-3z M14.5 7h.01');
|
|
49
|
+
const NtdPadStart = /* @__PURE__ */ discGlyph('NtdPadStart', 'M8.5 8.75h7 M8.5 12h7 M8.5 15.25h7');
|
|
50
|
+
const NtdPadSelect = /* @__PURE__ */ discGlyph('NtdPadSelect', 'M7.75 7.75h5.5v5.5h-5.5z M10.75 16.25h5.5v-5.5');
|
|
51
|
+
const NtdPadHome = /* @__PURE__ */ discGlyph('NtdPadHome', 'M7.95 12L12 8.6l4.05 3.4v4H7.95z');
|
|
52
|
+
const NtdPadDpad = /* @__PURE__ */ shapeGlyph('NtdPadDpad', 'M9 3h6v6h6v6h-6v6H9v-6H3V9h6z');
|
|
53
|
+
const NtdPadDpadUp = /* @__PURE__ */ shapeGlyph('NtdPadDpadUp', 'M9 3h6v6h6v6h-6v6H9v-6H3V9h6z M12 5.6l1.15 1.5h-2.3z');
|
|
54
|
+
const NtdPadDpadDown = /* @__PURE__ */ shapeGlyph('NtdPadDpadDown', 'M9 3h6v6h6v6h-6v6H9v-6H3V9h6z M12 18.4l1.15-1.5h-2.3z');
|
|
55
|
+
const NtdPadDpadLeft = /* @__PURE__ */ shapeGlyph('NtdPadDpadLeft', 'M9 3h6v6h6v6h-6v6H9v-6H3V9h6z M5.6 12l1.5-1.15v2.3z');
|
|
56
|
+
const NtdPadDpadRight = /* @__PURE__ */ shapeGlyph('NtdPadDpadRight', 'M9 3h6v6h6v6h-6v6H9v-6H3V9h6z M18.4 12l-1.5-1.15v2.3z');
|
|
57
|
+
const NtdPadStickLeft = /* @__PURE__ */ discGlyph('NtdPadStickLeft', 'M12 7.5a4.5 4.5 0 1 0 0 9a4.5 4.5 0 1 0 0 -9z M4.5 12h1');
|
|
58
|
+
const NtdPadStickRight = /* @__PURE__ */ discGlyph('NtdPadStickRight', 'M12 7.5a4.5 4.5 0 1 0 0 9a4.5 4.5 0 1 0 0 -9z M18.5 12h1');
|
|
59
|
+
const NtdPadStickLeftPress = /* @__PURE__ */ discGlyph('NtdPadStickLeftPress', 'M12 7.5a4.5 4.5 0 1 0 0 9a4.5 4.5 0 1 0 0 -9z M12 12h.01 M4.5 12h1');
|
|
60
|
+
const NtdPadStickRightPress = /* @__PURE__ */ discGlyph('NtdPadStickRightPress', 'M12 7.5a4.5 4.5 0 1 0 0 9a4.5 4.5 0 1 0 0 -9z M12 12h.01 M18.5 12h1');
|
|
61
|
+
const NtdRemoteOk = /* @__PURE__ */ discGlyph('NtdRemoteOk', 'M12 8.5a3.5 3.5 0 1 0 0 7a3.5 3.5 0 1 0 0 -7z');
|
|
62
|
+
const NtdRemoteBack = /* @__PURE__ */ shapeGlyph('NtdRemoteBack', 'M9 14l-4-4 4-4 M5 10h9a5 5 0 0 1 0 10h-2');
|
|
63
|
+
const NtdRemoteMenu = /* @__PURE__ */ shapeGlyph('NtdRemoteMenu', 'M4 6h16v12H4z M8 10h8 M8 14h8');
|
|
64
|
+
const NtdKeyCommand = /* @__PURE__ */ shapeGlyph('NtdKeyCommand', 'M9 9V6.5A2.5 2.5 0 1 0 6.5 9H9z M9 9h6 M9 9v6 M15 9V6.5A2.5 2.5 0 1 1 17.5 9H15z M15 9v6 M15 15H9 M15 15v2.5a2.5 2.5 0 1 0 2.5-2.5H15z M9 15H6.5A2.5 2.5 0 1 0 9 17.5V15z');
|
|
65
|
+
const NtdKeyOption = /* @__PURE__ */ shapeGlyph('NtdKeyOption', 'M4 6h5l6 12h5 M14 6h6');
|
|
66
|
+
const NtdKeyShift = /* @__PURE__ */ shapeGlyph('NtdKeyShift', 'M12 4l-8 8h4v8h8v-8h4z');
|
|
67
|
+
const NtdKeyControl = /* @__PURE__ */ shapeGlyph('NtdKeyControl', 'M7 14l5-5 5 5');
|
|
68
|
+
const NtdKeyEnter = /* @__PURE__ */ shapeGlyph('NtdKeyEnter', 'M20 5v7a3 3 0 0 1-3 3H5 M9 11l-4 4 4 4');
|
|
69
|
+
const NtdKeyTab = /* @__PURE__ */ shapeGlyph('NtdKeyTab', 'M4 12h14 M14 8l4 4-4 4 M20 6v12');
|
|
70
|
+
// On-screen keyboard keys (1.3.0 H1)
|
|
71
|
+
const NtdKeyBackspace = /* @__PURE__ */ shapeGlyph('NtdKeyBackspace', 'M21 5H9l-6 7 6 7h12a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1z M17 9l-6 6 M11 9l6 6');
|
|
72
|
+
const NtdKeySpace = /* @__PURE__ */ shapeGlyph('NtdKeySpace', 'M4 10v4h16v-4');
|
|
73
|
+
const NtdKeyCaps = /* @__PURE__ */ shapeGlyph('NtdKeyCaps', 'M12 4l-7 7h4v5h6v-5h4z M8 20h8');
|
|
74
|
+
|
|
75
|
+
export { NtdKeyBackspace, NtdKeyCaps, NtdKeyCommand, NtdKeyControl, NtdKeyEnter, NtdKeyOption, NtdKeyShift, NtdKeySpace, NtdKeyTab, NtdPadDpad, NtdPadDpadDown, NtdPadDpadLeft, NtdPadDpadRight, NtdPadDpadUp, NtdPadGenericEast, NtdPadGenericNorth, NtdPadGenericSouth, NtdPadGenericWest, NtdPadHome, NtdPadLb, NtdPadLt, NtdPadNintendoA, NtdPadNintendoB, NtdPadNintendoX, NtdPadNintendoY, NtdPadPlaystationCircle, NtdPadPlaystationCross, NtdPadPlaystationSquare, NtdPadPlaystationTriangle, NtdPadRb, NtdPadRt, NtdPadSelect, NtdPadStart, NtdPadStickLeft, NtdPadStickLeftPress, NtdPadStickRight, NtdPadStickRightPress, NtdPadXboxA, NtdPadXboxB, NtdPadXboxX, NtdPadXboxY, NtdRemoteBack, NtdRemoteMenu, NtdRemoteOk };
|
package/dist/esm/icons/legal.js
CHANGED
|
@@ -1,18 +1,13 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { createIcon } from '../createIcon.js';
|
|
3
|
+
import { paperIcon } from '../iconParts.js';
|
|
3
4
|
|
|
4
5
|
/* ────────────────────────────────────────────────────────────────────────────
|
|
5
6
|
LEGAL DOCUMENTS
|
|
6
7
|
───────────────────────────────────────────────────────────────────────────── */
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
solid: ({ primaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M4 4a2 2 0 012-2h8l6 6v14a2 2 0 01-2 2H6a2 2 0 01-2-2V4z", fill: primaryColor }), jsx("path", { d: "M14 2v6h6", fill: "white", opacity: "0.3" }), jsx("path", { d: "M8 12h8M8 16h6", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" }), jsx("path", { d: "M10 20c2-1 3-2 4-2s2 1 2 2", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round", fill: "none" })] })),
|
|
11
|
-
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M4 4a2 2 0 012-2h8l6 6v14a2 2 0 01-2 2H6a2 2 0 01-2-2V4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M14 2v6h6", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round" }), jsx("path", { d: "M8 12h8M8 16h6", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("path", { d: "M10 20c2-1 3-2 4-2s2 1 2 2", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", fill: "none" })] })),
|
|
12
|
-
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M4 4a2 2 0 012-2h8l6 6v14a2 2 0 01-2 2H6a2 2 0 01-2-2V4z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M14 2v6h6", fill: primaryColor, opacity: "0.3" }), jsx("path", { d: "M4 4a2 2 0 012-2h8l6 6v14a2 2 0 01-2 2H6a2 2 0 01-2-2V4z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M14 2v6h6", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round" }), jsx("path", { d: "M8 12h8M8 16h6", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round" }), jsx("path", { d: "M10 20c2-1 3-2 4-2s2 1 2 2", stroke: primaryColor, strokeWidth: strokeWidth, strokeLinecap: "round", fill: "none" })] })),
|
|
13
|
-
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M4 4a2 2 0 012-2h8l6 6v14a2 2 0 01-2 2H6a2 2 0 01-2-2V4z", fill: primaryColor }), jsx("path", { d: "M4 4a2 2 0 012-2h8l6 6v14a2 2 0 01-2 2H6a2 2 0 01-2-2V4z", fill: "white", opacity: "0.08" }), jsx("path", { d: "M14 2v6h6", fill: "white", opacity: "0.3" }), jsx("path", { d: "M8 12h8M8 16h6", stroke: "white", strokeWidth: "1", strokeLinecap: "round" }), jsx("path", { d: "M10 20c2-1 3-2 4-2s2 1 2 2", stroke: "white", strokeWidth: "1", strokeLinecap: "round", fill: "none" })] })),
|
|
14
|
-
},
|
|
15
|
-
});
|
|
8
|
+
// NtdContract: NtdFile's page with two lines of text and two signature lines, left and right
|
|
9
|
+
// (the signature was a thick squiggle).
|
|
10
|
+
const NtdContract = /* @__PURE__ */ paperIcon('NtdContract', 'M7.5 12h9M7.5 15.5h9M7.5 19h3.5M13 19h3.5');
|
|
16
11
|
const NtdLegalDocument = /* @__PURE__ */ createIcon({
|
|
17
12
|
displayName: 'NtdLegalDocument',
|
|
18
13
|
paths: {
|
package/dist/esm/icons/media.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { createIcon } from '../createIcon.js';
|
|
3
|
+
import { within } from '../iconParts.js';
|
|
3
4
|
|
|
4
5
|
const NtdPlay = /* @__PURE__ */ createIcon({
|
|
5
6
|
displayName: 'NtdPlay',
|
|
@@ -110,22 +111,31 @@ const NtdMicrophoneOff = /* @__PURE__ */ createIcon({
|
|
|
110
111
|
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "9", y: "1", width: "6", height: "12", rx: "3", fill: primaryColor }), jsx("path", { d: "M19 10v2a7 7 0 01-14 0v-2", stroke: secondaryColor, strokeWidth: "1.8", fill: "none" }), jsx("line", { x1: "12", y1: "19", x2: "12", y2: "23", stroke: secondaryColor, strokeWidth: "1.5" }), jsx("line", { x1: "8", y1: "23", x2: "16", y2: "23", stroke: secondaryColor, strokeWidth: "1.5" }), jsx("line", { x1: "2", y1: "2", x2: "22", y2: "22", stroke: secondaryColor, strokeWidth: "1.8" })] })),
|
|
111
112
|
},
|
|
112
113
|
});
|
|
114
|
+
// NtdMusic: the note heads are tilted ellipses whose right edge is the stem's right edge, and the
|
|
115
|
+
// stems end where that edge is vertical, so stem and head meet without a step (the heads stuck
|
|
116
|
+
// out right of the stems). The outline heads are the filled ones moved in by half a stroke, so
|
|
117
|
+
// their stroke meets the stem the same way.
|
|
118
|
+
const MUSIC_STEMS = 'M8.3 17.22V5l12-2v12.22';
|
|
113
119
|
const NtdMusic = /* @__PURE__ */ createIcon({
|
|
114
120
|
displayName: 'NtdMusic',
|
|
115
121
|
paths: {
|
|
116
|
-
solid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d:
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
122
|
+
solid: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: MUSIC_STEMS, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsxs("g", { fill: primaryColor, children: [jsx("ellipse", { cx: "5.97", cy: "18", rx: "3.5", ry: "2.3", transform: "rotate(-24 5.97 18)" }), jsx("ellipse", { cx: "17.97", cy: "16", rx: "3.5", ry: "2.3", transform: "rotate(-24 17.97 16)" })] })] })),
|
|
123
|
+
// the stems stop a unit higher: the square caps of `sharp` then end at the heads' edge
|
|
124
|
+
sharp: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M8.3 16.22V5l12-2v11.22", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsxs("g", { fill: primaryColor, children: [jsx("ellipse", { cx: "5.97", cy: "18", rx: "3.5", ry: "2.3", transform: "rotate(-24 5.97 18)" }), jsx("ellipse", { cx: "17.97", cy: "16", rx: "3.5", ry: "2.3", transform: "rotate(-24 17.97 16)" })] })] })),
|
|
125
|
+
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: MUSIC_STEMS, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsxs("g", { stroke: primaryColor, strokeWidth: strokeWidth, fill: "none", children: [jsx("ellipse", { cx: "5.97", cy: "18", rx: "2.5", ry: "1.3", transform: "rotate(-24 5.97 18)" }), jsx("ellipse", { cx: "17.97", cy: "16", rx: "2.5", ry: "1.3", transform: "rotate(-24 17.97 16)" })] })] })),
|
|
126
|
+
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M8.3 5l12-2v12.22", stroke: secondaryColor, strokeWidth: strokeWidth, fill: "none", opacity: secondaryOpacity + 0.2 }), jsx("path", { d: MUSIC_STEMS, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsxs("g", { fill: primaryColor, children: [jsx("ellipse", { cx: "5.97", cy: "18", rx: "3.5", ry: "2.3", transform: "rotate(-24 5.97 18)" }), jsx("ellipse", { cx: "17.97", cy: "16", rx: "3.5", ry: "2.3", transform: "rotate(-24 17.97 16)" })] })] })),
|
|
127
|
+
vivid: ({ primaryColor, secondaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: MUSIC_STEMS, stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("ellipse", { cx: "5.97", cy: "18", rx: "3.5", ry: "2.3", transform: "rotate(-24 5.97 18)", fill: primaryColor }), jsx("ellipse", { cx: "17.97", cy: "16", rx: "3.5", ry: "2.3", transform: "rotate(-24 17.97 16)", fill: secondaryColor })] })),
|
|
120
128
|
},
|
|
121
129
|
});
|
|
130
|
+
// The flap is a cut through the envelope, kept inside it: its ends meet the sides flush (the
|
|
131
|
+
// round caps stuck out past the corners).
|
|
122
132
|
const NtdMail = /* @__PURE__ */ createIcon({
|
|
123
133
|
displayName: 'NtdMail',
|
|
124
134
|
paths: {
|
|
125
|
-
solid: ({ primaryColor, accentColor, accentOpacity,
|
|
135
|
+
solid: ({ primaryColor, accentColor, accentOpacity, uid }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: primaryColor }), within(uid, 'flap', jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2" }), jsx("path", { d: "M22 6l-10 7L2 6", stroke: accentColor, strokeWidth: "1.5", fill: "none", opacity: accentOpacity }))] })),
|
|
126
136
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M22 6l-10 7L2 6", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
|
|
127
137
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: secondaryColor, opacity: secondaryOpacity }), jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" }), jsx("path", { d: "M22 6l-10 7L2 6", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
|
|
128
|
-
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: primaryColor }), jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: "white", opacity: "0.1" }), jsx("path", { d: "M22 6l-10 7L2 6", stroke: secondaryColor, strokeWidth: "1.8", fill: "none" })] })),
|
|
138
|
+
vivid: ({ primaryColor, secondaryColor, uid }) => (jsxs(Fragment, { children: [jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: primaryColor }), jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", fill: "white", opacity: "0.1" }), within(uid, 'flap', jsx("rect", { x: "2", y: "4", width: "20", height: "16", rx: "2" }), jsx("path", { d: "M22 6l-10 7L2 6", stroke: secondaryColor, strokeWidth: "1.8", fill: "none" }))] })),
|
|
129
139
|
},
|
|
130
140
|
});
|
|
131
141
|
// Inbox: a tray (open box seen from the front, the dip where letters land), next to NtdMail's
|
|
@@ -139,22 +149,27 @@ const NtdInbox = /* @__PURE__ */ createIcon({
|
|
|
139
149
|
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsx("path", { d: "M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11zM4.24 12h3.23l2 3h5.06l2-3h3.23l-2.68-5.37a.5.5 0 0 0-.45-.27H7.37a.5.5 0 0 0-.45.27z", fill: primaryColor, fillRule: "evenodd" })),
|
|
140
150
|
},
|
|
141
151
|
});
|
|
152
|
+
const PHONE_HANDSET = 'M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07 19.5 19.5 0 01-6-6 19.79 19.79 0 01-3.07-8.67A2 2 0 014.11 2h3a2 2 0 012 1.72 12.84 12.84 0 00.7 2.81 2 2 0 01-.45 2.11L8.09 9.91a16 16 0 006 6l1.27-1.27a2 2 0 012.11-.45 12.84 12.84 0 002.81.7A2 2 0 0122 16.92z';
|
|
142
153
|
const NtdPhone = /* @__PURE__ */ createIcon({
|
|
143
154
|
displayName: 'NtdPhone',
|
|
144
155
|
paths: {
|
|
145
156
|
solid: ({ primaryColor, strokeWidth: _strokeWidth }) => (jsx("path", { d: "M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07 19.5 19.5 0 01-6-6 19.79 19.79 0 01-3.07-8.67A2 2 0 014.11 2h3a2 2 0 012 1.72 12.84 12.84 0 00.7 2.81 2 2 0 01-.45 2.11L8.09 9.91a16 16 0 006 6l1.27-1.27a2 2 0 012.11-.45 12.84 12.84 0 002.81.7A2 2 0 0122 16.92z", fill: primaryColor })),
|
|
146
157
|
outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07 19.5 19.5 0 01-6-6 19.79 19.79 0 01-3.07-8.67A2 2 0 014.11 2h3a2 2 0 012 1.72 12.84 12.84 0 00.7 2.81 2 2 0 01-.45 2.11L8.09 9.91a16 16 0 006 6l1.27-1.27a2 2 0 012.11-.45 12.84 12.84 0 002.81.7A2 2 0 0122 16.92z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })),
|
|
147
|
-
|
|
158
|
+
// Fills only, a colour per part: the ear and mouth pieces primary, the grip between them
|
|
159
|
+
// secondary. The handset is symmetric about (x, y) -> (24 - y, 24 - x), so the two cuts are
|
|
160
|
+
// mirror images, each through the corner where an end piece meets the grip.
|
|
161
|
+
duotone: ({ primaryColor, secondaryColor, uid }) => (jsxs(Fragment, { children: [jsx("path", { d: PHONE_HANDSET, fill: secondaryColor }), within(uid, 'ear', jsx("polygon", { points: "0,0 13,0 13,9.5 0,10.59" }), jsx("path", { d: PHONE_HANDSET, fill: primaryColor })), within(uid, 'mouth', jsx("polygon", { points: "24,24 24,11 14.5,11 13.41,24" }), jsx("path", { d: PHONE_HANDSET, fill: primaryColor }))] })),
|
|
148
162
|
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07 19.5 19.5 0 01-6-6 19.79 19.79 0 01-3.07-8.67A2 2 0 014.11 2h3a2 2 0 012 1.72 12.84 12.84 0 00.7 2.81 2 2 0 01-.45 2.11L8.09 9.91a16 16 0 006 6l1.27-1.27a2 2 0 012.11-.45 12.84 12.84 0 002.81.7A2 2 0 0122 16.92z", fill: primaryColor }), jsx("path", { d: "M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07 19.5 19.5 0 01-6-6 19.79 19.79 0 01-3.07-8.67A2 2 0 014.11 2h3a2 2 0 012 1.72 12.84 12.84 0 00.7 2.81 2 2 0 01-.45 2.11L8.09 9.91a16 16 0 006 6l1.27-1.27a2 2 0 012.11-.45 12.84 12.84 0 002.81.7A2 2 0 0122 16.92z", fill: "white", opacity: "0.1" })] })),
|
|
149
163
|
},
|
|
150
164
|
});
|
|
165
|
+
// The tail leaves the bubble's bottom edge 4 units in from the left (it ran down the left side).
|
|
151
166
|
const NtdChat = /* @__PURE__ */ createIcon({
|
|
152
167
|
displayName: 'NtdChat',
|
|
153
168
|
paths: {
|
|
154
|
-
solid: ({ primaryColor, strokeWidth: _strokeWidth }) => (jsx("path", { d: "
|
|
155
|
-
outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "
|
|
156
|
-
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "
|
|
157
|
-
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "
|
|
169
|
+
solid: ({ primaryColor, strokeWidth: _strokeWidth }) => (jsx("path", { d: "M5 3h14a2 2 0 012 2v10a2 2 0 01-2 2h-8l-4 4v-4H5a2 2 0 01-2-2V5a2 2 0 012-2z", fill: primaryColor })),
|
|
170
|
+
outline: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M5 3h14a2 2 0 012 2v10a2 2 0 01-2 2h-8l-4 4v-4H5a2 2 0 01-2-2V5a2 2 0 012-2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })),
|
|
171
|
+
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("path", { d: "M5 3h14a2 2 0 012 2v10a2 2 0 01-2 2h-8l-4 4v-4H5a2 2 0 01-2-2V5a2 2 0 012-2z", fill: secondaryColor, opacity: secondaryOpacity }), jsx("path", { d: "M5 3h14a2 2 0 012 2v10a2 2 0 01-2 2h-8l-4 4v-4H5a2 2 0 01-2-2V5a2 2 0 012-2z", stroke: primaryColor, strokeWidth: strokeWidth, fill: "none" })] })),
|
|
172
|
+
vivid: ({ primaryColor, secondaryColor: _secondaryColor }) => (jsxs(Fragment, { children: [jsx("path", { d: "M5 3h14a2 2 0 012 2v10a2 2 0 01-2 2h-8l-4 4v-4H5a2 2 0 01-2-2V5a2 2 0 012-2z", fill: primaryColor }), jsx("path", { d: "M5 3h14a2 2 0 012 2v10a2 2 0 01-2 2h-8l-4 4v-4H5a2 2 0 01-2-2V5a2 2 0 012-2z", fill: "white", opacity: "0.1" })] })),
|
|
158
173
|
},
|
|
159
174
|
});
|
|
160
175
|
/* NtdSend — the paper plane read ~20% oversized next to the rest of the set,
|
|
@@ -82,13 +82,15 @@ const NtdMenu = /* @__PURE__ */ createIcon({
|
|
|
82
82
|
vivid: ({ primaryColor, secondaryColor }) => (jsxs(Fragment, { children: [jsx("rect", { x: "3", y: "5", width: "18", height: "2", rx: "1", fill: primaryColor }), jsx("rect", { x: "3", y: "5", width: "18", height: "2", rx: "1", fill: "white", opacity: "0.08" }), jsx("rect", { x: "3", y: "11", width: "18", height: "2", rx: "1", fill: secondaryColor }), jsx("rect", { x: "3", y: "17", width: "18", height: "2", rx: "1", fill: "#3B82F6" })] })),
|
|
83
83
|
},
|
|
84
84
|
});
|
|
85
|
+
// The filled cross is drawn as two strokes at twice the stroke width, like NtdCheck: it was a
|
|
86
|
+
// fixed outline that did not follow `strokeWidth` at all.
|
|
85
87
|
const NtdClose = /* @__PURE__ */ createIcon({
|
|
86
88
|
displayName: 'NtdClose',
|
|
87
89
|
paths: {
|
|
88
|
-
solid: ({ primaryColor }) => (jsx("path", { d: "M18
|
|
90
|
+
solid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M18 6L6 18M6 6l12 12", stroke: primaryColor, strokeWidth: strokeWidth * 2 })),
|
|
89
91
|
outline: ({ primaryColor, strokeWidth }) => (jsxs(Fragment, { children: [jsx("line", { x1: "6", y1: "6", x2: "18", y2: "18", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "18", y1: "6", x2: "6", y2: "18", stroke: primaryColor, strokeWidth: strokeWidth })] })),
|
|
90
92
|
duotone: ({ primaryColor, secondaryColor, secondaryOpacity, strokeWidth }) => (jsxs(Fragment, { children: [jsx("circle", { cx: "12", cy: "12", r: "9", fill: secondaryColor, opacity: secondaryOpacity }), jsx("line", { x1: "8", y1: "8", x2: "16", y2: "16", stroke: primaryColor, strokeWidth: strokeWidth }), jsx("line", { x1: "16", y1: "8", x2: "8", y2: "16", stroke: primaryColor, strokeWidth: strokeWidth })] })),
|
|
91
|
-
vivid: ({ primaryColor,
|
|
93
|
+
vivid: ({ primaryColor, strokeWidth }) => (jsx("path", { d: "M18 6L6 18M6 6l12 12", stroke: primaryColor, strokeWidth: strokeWidth * 2 })),
|
|
92
94
|
},
|
|
93
95
|
});
|
|
94
96
|
const NtdMoreHorizontal = /* @__PURE__ */ createIcon({
|