@central-icons-react/all 1.1.319 → 1.1.321

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.
@@ -6,8 +6,8 @@ export type CentralIconBaseProps = {
6
6
  mode?: "masked" | "raw";
7
7
  maskId?: string;
8
8
  } & SVGProps<SVGSVGElement>;
9
- export declare const CentralIconBase: React.FC<
10
- CentralIconBaseProps & {
11
- ariaLabel?: string;
12
- }
13
- >;
9
+ type Props = CentralIconBaseProps & {
10
+ ariaLabel?: string;
11
+ };
12
+ export declare const CentralIconBase: React.FC<Props>;
13
+ export {};
@@ -1,12 +1,32 @@
1
1
  import React from "react";
2
- export const CentralIconBase = ({ children, size = 24, ariaLabel, color, ariaHidden = true, style, mode = "masked", maskId, ...props }) => {
2
+ const ModernCentralIconBase = (props) => {
3
+ const instanceId = React.useId();
4
+ return React.createElement(CentralIconSvg, { ...props, instanceId: instanceId });
5
+ };
6
+ let nextLegacyId = 0;
7
+ class LegacyCentralIconBase extends React.Component {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.state = {};
11
+ }
12
+ componentDidMount() {
13
+ // Defer legacy IDs until mount so server and initial client markup agree.
14
+ this.setState({ instanceId: `legacy-${++nextLegacyId}` });
15
+ }
16
+ render() {
17
+ return (React.createElement(CentralIconSvg, { ...this.props.iconProps, instanceId: this.state.instanceId }));
18
+ }
19
+ }
20
+ export const CentralIconBase = (props) => typeof React.useId === "function" ? (React.createElement(ModernCentralIconBase, { ...props })) : (React.createElement(LegacyCentralIconBase, { iconProps: props }));
21
+ const CentralIconSvg = ({ children, size = 24, ariaLabel, color, ariaHidden = true, style, mode = "masked", maskId, instanceId, ...props }) => {
22
+ const uniqueMaskId = instanceId ? `${maskId}-${instanceId}` : maskId;
3
23
  const masked = mode !== "raw" && !!maskId;
4
24
  return (React.createElement("svg", { ...props, "aria-hidden": ariaHidden, role: ariaHidden ? undefined : "img", width: typeof size === "number" ? `${size}px` : size, height: typeof size === "number" ? `${size}px` : size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", style: { color, ...style } },
5
25
  ariaLabel && !ariaHidden && React.createElement("title", null, ariaLabel),
6
26
  masked ? (React.createElement(React.Fragment, null,
7
- React.createElement("mask", { id: maskId, maskUnits: "userSpaceOnUse", x: "0", y: "0", width: "24", height: "24" },
27
+ React.createElement("mask", { id: uniqueMaskId, maskUnits: "userSpaceOnUse", x: "0", y: "0", width: "24", height: "24" },
8
28
  React.createElement("rect", { width: "24", height: "24", fill: "#000" }),
9
29
  React.createElement("g", { fill: "none", style: { color: "#fff" } }, children)),
10
- React.createElement("rect", { width: "24", height: "24", fill: "currentColor", mask: `url(#${maskId})` }))) : (children)));
30
+ React.createElement("rect", { width: "24", height: "24", fill: "currentColor", mask: `url(#${uniqueMaskId})` }))) : (children)));
11
31
  };
12
32
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/CentralIconBase/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B,MAAM,CAAC,MAAM,eAAe,GAExB,CAAC,EACH,QAAQ,EACR,IAAI,GAAG,EAAE,EACT,SAAS,EACT,KAAK,EACL,UAAU,GAAG,IAAI,EACjB,KAAK,EACL,IAAI,GAAG,QAAQ,EACf,MAAM,EACN,GAAG,KAAK,EACT,EAAE,EAAE;IACH,MAAM,MAAM,GAAG,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC;IAC1C,OAAO,CACL,gCACM,KAAK,iBACI,UAAU,EACvB,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EACpC,KAAK,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EACpD,MAAM,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,EACrD,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B,EAClC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE;QAEzB,SAAS,IAAI,CAAC,UAAU,IAAI,mCAAQ,SAAS,CAAS;QACtD,MAAM,CAAC,CAAC,CAAC,CACR;YACE,8BACE,EAAE,EAAE,MAAM,EACV,SAAS,EAAC,gBAAgB,EAC1B,CAAC,EAAC,GAAG,EACL,CAAC,EAAC,GAAG,EACL,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI;gBAEX,8BAAM,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,IAAI,EAAC,MAAM,GAAG;gBAC3C,2BAAG,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IACpC,QAAQ,CACP,CACC;YACP,8BACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,IAAI,EAAC,cAAc,EACnB,IAAI,EAAE,QAAQ,MAAM,GAAG,GACvB,CACD,CACJ,CAAC,CAAC,CAAC,CACF,QAAQ,CACT,CACG,CACP,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/CentralIconBase/index.tsx"],"names":[],"mappings":"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"}
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # @central-icons-react/all
2
2
 
3
3
  A comprehensive collection of professionally designed React icons featuring customizable styles including round and square shapes, filled and outlined variants, multiple stroke widths, and corner radius options.
4
- The collection contains 2095 icons with 30 variants in total.
4
+ The collection contains 2096 icons with 30 variants in total.
5
5
 
6
6
  ## Table of Contents
7
7
 
@@ -91,6 +91,8 @@ function MyComponent() {
91
91
 
92
92
  ## Using transparent colors
93
93
 
94
+ Each mounted icon has a unique mask ID, so repeated icons remain independent even when one is hidden with `display: none`. React 18+ uses `useId()` for IDs that also match during server rendering and hydration. Older React versions assign unique IDs after mounting; server-rendered icons retain shared IDs until hydration completes.
95
+
94
96
  Transparent colors work out of the box. Every icon is drawn through a mask and the color is painted once, so a semi-transparent `color` (or `currentColor` with an alpha channel) renders evenly — no darker overlaps:
95
97
 
96
98
  ```jsx
@@ -1620,6 +1622,7 @@ Below is a complete list of available icons:
1620
1622
  - IconNoiseReduction
1621
1623
  - IconPictureInPicture
1622
1624
  - IconRear
1625
+ - IconReferenceImage
1623
1626
  - IconRemoveBackground
1624
1627
  - IconRemoveBackground2
1625
1628
  - IconRetouch
package/icons/index.d.ts CHANGED
@@ -6874,6 +6874,11 @@ export declare const centralIconsMetadata: {
6874
6874
  readonly category: "Photography & Video";
6875
6875
  readonly createdAt: "2026-06-03T11:25:30.634924+00:00";
6876
6876
  };
6877
+ readonly IconReferenceImage: {
6878
+ readonly title: "reference-image, verified-photo, proof, aperture";
6879
+ readonly category: "Photography & Video";
6880
+ readonly createdAt: "2026-09-16T07:02:05.063116+00:00";
6881
+ };
6877
6882
  readonly IconLock: {
6878
6883
  readonly title: "lock, private";
6879
6884
  readonly category: "Security";
package/icons/index.js CHANGED
@@ -1,4 +1,4 @@
1
1
  [diffend] Oversized file quarantined before diffing.
2
2
  name: package/icons/index.js
3
- size: 55637973 bytes
4
- sha256: 358e2fcc64285c6a74c9c22661a4caddf93005e663060d4e013357b9af876020
3
+ size: 55684269 bytes
4
+ sha256: 755a8fadb3cf5c11edcc28758d3cb35070ae59f792d1db88213dfcc98c055e8c
@@ -1,4 +1,4 @@
1
1
  [diffend] Oversized file quarantined before diffing.
2
2
  name: package/icons/index.js.map
3
- size: 60458736 bytes
4
- sha256: ea6960024f85d3993145499dc83dec03f849b232d75c440e0053ff51e4299677
3
+ size: 60509995 bytes
4
+ sha256: 8df341f4242f3e74fa2dc4d9515e009d122b509325e1551aa5f938808956ae4c
package/icons/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
1
  [diffend] Oversized file quarantined before diffing.
2
2
  name: package/icons/index.mjs
3
- size: 55637462 bytes
4
- sha256: d8589d7e09822fe1ffe266f9fbf3852d5328eff6e40fcff3199e6e6edfa4095d
3
+ size: 55683758 bytes
4
+ sha256: 06f710666d475c0ec2d9d8bbdaef39b3ccbec4087250ce2be13c4e3dfa68e99e
@@ -1,4 +1,4 @@
1
1
  [diffend] Oversized file quarantined before diffing.
2
2
  name: package/icons/index.mjs.map
3
- size: 60458613 bytes
4
- sha256: 9cc5292de693f2100b9bd56abb0561adf013307f4a06e3d624e5723115c0d1db
3
+ size: 60509872 bytes
4
+ sha256: 965eb4cfebe608af069d1162cbb835886a53b42c480e8b4b1689c128ae818629
package/icons-index.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "withProps": "<IconHome size={32} color=\"#007AFF\" />",
12
12
  "central": "<CentralIcon\n iconJoin=\"round\" // round | square\n iconFill=\"filled\" // filled | outlined\n iconStroke=\"1\" // 1 | 1.5 | 2\n iconRadius=\"1\" // 0 | 1 | 2 | 3\n name=\"IconName\"\n/>"
13
13
  },
14
- "totalIcons": 2095,
14
+ "totalIcons": 2096,
15
15
  "categories": {
16
16
  "AI & Magic": {
17
17
  "count": 90,
@@ -1436,7 +1436,7 @@
1436
1436
  ]
1437
1437
  },
1438
1438
  "Photography & Video": {
1439
- "count": 87,
1439
+ "count": 88,
1440
1440
  "icons": [
1441
1441
  "Icon4k",
1442
1442
  "IconAddImage",
@@ -1503,6 +1503,7 @@
1503
1503
  "IconNoiseReduction",
1504
1504
  "IconPictureInPicture",
1505
1505
  "IconRear",
1506
+ "IconReferenceImage",
1506
1507
  "IconRemoveBackground",
1507
1508
  "IconRemoveBackground2",
1508
1509
  "IconRetouch",
@@ -3685,6 +3686,7 @@
3685
3686
  "IconVideo2": "video-2, camera, movie, play",
3686
3687
  "IconVideo2Off": "video-2-off, cam-off, movie, play",
3687
3688
  "IconStopShareScreen": "stop-share-screen, stop-sharing",
3689
+ "IconReferenceImage": "reference-image, verified-photo, proof, aperture",
3688
3690
  "IconLock": "lock, private",
3689
3691
  "IconUnlocked": "unlocked, unlock, private",
3690
3692
  "IconShield": "shield, security, protection",
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
1
  [diffend] Oversized file quarantined before diffing.
2
2
  name: package/index.js
3
- size: 55639262 bytes
4
- sha256: 2d7ac05a688793a3d705ef33c3b32136ec2ba1ebe49edf4eeb5dcc031d2b1491
3
+ size: 55686045 bytes
4
+ sha256: 1265ed65119f351d1050f1122995e7f9afb3c3443199a1f2c73ff7a9d27184df
package/index.js.map CHANGED
@@ -1,4 +1,4 @@
1
1
  [diffend] Oversized file quarantined before diffing.
2
2
  name: package/index.js.map
3
- size: 60463457 bytes
4
- sha256: 5b08e5cafb21e5ff76f168e91999dbf2a15595171798650b6d18374788ea597d
3
+ size: 60516395 bytes
4
+ sha256: 02001f4a8da5f58d95fb4ba1248a0caa846b827582eaa15511167a1c02e9bc7e
package/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
1
  [diffend] Oversized file quarantined before diffing.
2
2
  name: package/index.mjs
3
- size: 55638545 bytes
4
- sha256: 153698f198106c3ebd4845e1edf8311b1c683c1035b4f3128e4254e390d2e36f
3
+ size: 55685272 bytes
4
+ sha256: f69f670164f0c78a4e59bfa5a0bd39f55c503b168524b5a9b33b666eeccc0755
package/index.mjs.map CHANGED
@@ -1,4 +1,4 @@
1
1
  [diffend] Oversized file quarantined before diffing.
2
2
  name: package/index.mjs.map
3
- size: 60463275 bytes
4
- sha256: f22052fb0d03f189dc17616a4a584950ddafe2245841d39db07a94e72f5c8536
3
+ size: 60516183 bytes
4
+ sha256: 1ad522994107122a85fb3553dc1192b7cd5313c41171cf1c2245cec435e9a764
package/license-check.js CHANGED
@@ -18,7 +18,7 @@ const licenseCheck = async () => {
18
18
  },
19
19
  body: JSON.stringify({
20
20
  package: "central-icons-react/all",
21
- version: "1.1.319",
21
+ version: "1.1.321",
22
22
  }),
23
23
  signal: controller.signal,
24
24
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@central-icons-react/all",
3
- "version": "1.1.319",
3
+ "version": "1.1.321",
4
4
  "license": "SEE LICENSE IN LICENSE.md",
5
5
  "homepage": "https://iconists.co/central",
6
6
  "bugs": {
@@ -5,7 +5,7 @@ description: Use when inserting icons in React code that imports from @central-i
5
5
 
6
6
  # Central Icons — React (all)
7
7
 
8
- This skill helps you find and insert icons from the `@central-icons-react/all` package (version 1.1.319). The package exposes 2095 icons across 30 variants (round/square × filled/outlined × multiple corner radii and stroke widths) through a single dynamic `CentralIcon` component.
8
+ This skill helps you find and insert icons from the `@central-icons-react/all` package (version 1.1.321). The package exposes 2096 icons across 30 variants (round/square × filled/outlined × multiple corner radii and stroke widths) through a single dynamic `CentralIcon` component.
9
9
 
10
10
  ## Prefer a variant package when possible
11
11
 
@@ -1575,6 +1575,7 @@ Need the raw, unmasked shapes instead (e.g. to style individual paths)? Set `mod
1575
1575
  - **IconNoiseReduction** — noise-reduction
1576
1576
  - **IconPictureInPicture** — picture-in-picture
1577
1577
  - **IconRear** — rear, front-back, change-cam, lens
1578
+ - **IconReferenceImage** — reference-image, verified-photo, proof, aperture
1578
1579
  - **IconRemoveBackground** — remove-background
1579
1580
  - **IconRemoveBackground2** — remove-background-2
1580
1581
  - **IconRetouch** — retouch, face, hair