@blueprintjs/icons 6.8.0 → 6.9.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.
Files changed (137) hide show
  1. package/icons.json +7 -0
  2. package/lib/cjs/generated/16px/blueprint-icons-16.d.ts +3 -2
  3. package/lib/cjs/generated/16px/blueprint-icons-16.js +2 -0
  4. package/lib/cjs/generated/16px/blueprint-icons-16.js.map +1 -1
  5. package/lib/cjs/generated/16px/paths/frame-to-frame.d.ts +2 -0
  6. package/lib/cjs/generated/16px/paths/frame-to-frame.js +4 -0
  7. package/lib/cjs/generated/16px/paths/frame-to-frame.js.map +1 -0
  8. package/lib/cjs/generated/16px/paths/index.d.ts +1 -0
  9. package/lib/cjs/generated/16px/paths/index.js +12 -10
  10. package/lib/cjs/generated/16px/paths/index.js.map +1 -1
  11. package/lib/cjs/generated/20px/blueprint-icons-20.d.ts +3 -2
  12. package/lib/cjs/generated/20px/blueprint-icons-20.js +2 -0
  13. package/lib/cjs/generated/20px/blueprint-icons-20.js.map +1 -1
  14. package/lib/cjs/generated/20px/paths/frame-to-frame.d.ts +2 -0
  15. package/lib/cjs/generated/20px/paths/frame-to-frame.js +4 -0
  16. package/lib/cjs/generated/20px/paths/frame-to-frame.js.map +1 -0
  17. package/lib/cjs/generated/20px/paths/index.d.ts +1 -0
  18. package/lib/cjs/generated/20px/paths/index.js +12 -10
  19. package/lib/cjs/generated/20px/paths/index.js.map +1 -1
  20. package/lib/cjs/generated/components/frame-to-frame.d.ts +4 -0
  21. package/lib/cjs/generated/components/frame-to-frame.js +32 -0
  22. package/lib/cjs/generated/components/frame-to-frame.js.map +1 -0
  23. package/lib/cjs/generated/components/index.d.ts +1 -0
  24. package/lib/cjs/generated/components/index.js +12 -10
  25. package/lib/cjs/generated/components/index.js.map +1 -1
  26. package/lib/cjs/generated/index.d.ts +1 -0
  27. package/lib/cjs/generated/index.js +12 -10
  28. package/lib/cjs/generated/index.js.map +1 -1
  29. package/lib/cjs/iconCodepoints.d.ts +1 -0
  30. package/lib/cjs/iconNames.d.ts +58 -56
  31. package/lib/cjs/tsconfig.build.tsbuildinfo +1 -0
  32. package/lib/css/blueprint-icons-16.eot +0 -0
  33. package/lib/css/blueprint-icons-16.svg +3 -0
  34. package/lib/css/blueprint-icons-16.ttf +0 -0
  35. package/lib/css/blueprint-icons-16.woff +0 -0
  36. package/lib/css/blueprint-icons-16.woff2 +0 -0
  37. package/lib/css/blueprint-icons-20.eot +0 -0
  38. package/lib/css/blueprint-icons-20.svg +3 -0
  39. package/lib/css/blueprint-icons-20.ttf +0 -0
  40. package/lib/css/blueprint-icons-20.woff +0 -0
  41. package/lib/css/blueprint-icons-20.woff2 +0 -0
  42. package/lib/css/blueprint-icons.css +2 -2
  43. package/lib/css/blueprint-icons.css.map +1 -1
  44. package/lib/esm/generated/16px/blueprint-icons-16.d.ts +3 -2
  45. package/lib/esm/generated/16px/blueprint-icons-16.js +2 -0
  46. package/lib/esm/generated/16px/blueprint-icons-16.js.map +1 -1
  47. package/lib/esm/generated/16px/paths/frame-to-frame.d.ts +2 -0
  48. package/lib/esm/generated/16px/paths/frame-to-frame.js +2 -0
  49. package/lib/esm/generated/16px/paths/frame-to-frame.js.map +1 -0
  50. package/lib/esm/generated/16px/paths/index.d.ts +1 -0
  51. package/lib/esm/generated/16px/paths/index.js +1 -0
  52. package/lib/esm/generated/16px/paths/index.js.map +1 -1
  53. package/lib/esm/generated/20px/blueprint-icons-20.d.ts +3 -2
  54. package/lib/esm/generated/20px/blueprint-icons-20.js +2 -0
  55. package/lib/esm/generated/20px/blueprint-icons-20.js.map +1 -1
  56. package/lib/esm/generated/20px/paths/frame-to-frame.d.ts +2 -0
  57. package/lib/esm/generated/20px/paths/frame-to-frame.js +2 -0
  58. package/lib/esm/generated/20px/paths/frame-to-frame.js.map +1 -0
  59. package/lib/esm/generated/20px/paths/index.d.ts +1 -0
  60. package/lib/esm/generated/20px/paths/index.js +1 -0
  61. package/lib/esm/generated/20px/paths/index.js.map +1 -1
  62. package/lib/esm/generated/components/frame-to-frame.d.ts +4 -0
  63. package/lib/esm/generated/components/frame-to-frame.js +28 -0
  64. package/lib/esm/generated/components/frame-to-frame.js.map +1 -0
  65. package/lib/esm/generated/components/index.d.ts +1 -0
  66. package/lib/esm/generated/components/index.js +1 -0
  67. package/lib/esm/generated/components/index.js.map +1 -1
  68. package/lib/esm/generated/index.d.ts +1 -0
  69. package/lib/esm/generated/index.js +1 -0
  70. package/lib/esm/generated/index.js.map +1 -1
  71. package/lib/esm/iconCodepoints.d.ts +1 -0
  72. package/lib/esm/iconNames.d.ts +58 -56
  73. package/lib/esm/tsconfig.build.tsbuildinfo +1 -0
  74. package/lib/esnext/generated/16px/blueprint-icons-16.d.ts +3 -2
  75. package/lib/esnext/generated/16px/blueprint-icons-16.js +2 -0
  76. package/lib/esnext/generated/16px/blueprint-icons-16.js.map +1 -1
  77. package/lib/esnext/generated/16px/paths/frame-to-frame.d.ts +2 -0
  78. package/lib/esnext/generated/16px/paths/frame-to-frame.js +2 -0
  79. package/lib/esnext/generated/16px/paths/frame-to-frame.js.map +1 -0
  80. package/lib/esnext/generated/16px/paths/index.d.ts +1 -0
  81. package/lib/esnext/generated/16px/paths/index.js +1 -0
  82. package/lib/esnext/generated/16px/paths/index.js.map +1 -1
  83. package/lib/esnext/generated/20px/blueprint-icons-20.d.ts +3 -2
  84. package/lib/esnext/generated/20px/blueprint-icons-20.js +2 -0
  85. package/lib/esnext/generated/20px/blueprint-icons-20.js.map +1 -1
  86. package/lib/esnext/generated/20px/paths/frame-to-frame.d.ts +2 -0
  87. package/lib/esnext/generated/20px/paths/frame-to-frame.js +2 -0
  88. package/lib/esnext/generated/20px/paths/frame-to-frame.js.map +1 -0
  89. package/lib/esnext/generated/20px/paths/index.d.ts +1 -0
  90. package/lib/esnext/generated/20px/paths/index.js +1 -0
  91. package/lib/esnext/generated/20px/paths/index.js.map +1 -1
  92. package/lib/esnext/generated/components/frame-to-frame.d.ts +4 -0
  93. package/lib/esnext/generated/components/frame-to-frame.js +28 -0
  94. package/lib/esnext/generated/components/frame-to-frame.js.map +1 -0
  95. package/lib/esnext/generated/components/index.d.ts +1 -0
  96. package/lib/esnext/generated/components/index.js +1 -0
  97. package/lib/esnext/generated/components/index.js.map +1 -1
  98. package/lib/esnext/generated/index.d.ts +1 -0
  99. package/lib/esnext/generated/index.js +1 -0
  100. package/lib/esnext/generated/index.js.map +1 -1
  101. package/lib/esnext/iconCodepoints.d.ts +1 -0
  102. package/lib/esnext/iconNames.d.ts +58 -56
  103. package/lib/esnext/tsconfig.build.tsbuildinfo +1 -0
  104. package/lib/scss/blueprint-icons-16.scss +1 -0
  105. package/package.json +13 -10
  106. package/src/generated/16px/_icon-variables.scss +1 -0
  107. package/src/generated/16px/blueprint-icons-16.css +5 -5
  108. package/src/generated/16px/blueprint-icons-16.eot +0 -0
  109. package/src/generated/16px/blueprint-icons-16.svg +3 -0
  110. package/src/generated/16px/blueprint-icons-16.ts +4 -0
  111. package/src/generated/16px/blueprint-icons-16.ttf +0 -0
  112. package/src/generated/16px/blueprint-icons-16.woff +0 -0
  113. package/src/generated/16px/blueprint-icons-16.woff2 +0 -0
  114. package/src/generated/16px/paths/frame-to-frame.ts +1 -0
  115. package/src/generated/16px/paths/index.ts +1 -0
  116. package/src/generated/20px/blueprint-icons-20.css +5 -5
  117. package/src/generated/20px/blueprint-icons-20.eot +0 -0
  118. package/src/generated/20px/blueprint-icons-20.svg +3 -0
  119. package/src/generated/20px/blueprint-icons-20.ts +4 -0
  120. package/src/generated/20px/blueprint-icons-20.ttf +0 -0
  121. package/src/generated/20px/blueprint-icons-20.woff +0 -0
  122. package/src/generated/20px/blueprint-icons-20.woff2 +0 -0
  123. package/src/generated/20px/paths/frame-to-frame.ts +1 -0
  124. package/src/generated/20px/paths/index.ts +1 -0
  125. package/src/generated/components/frame-to-frame.tsx +38 -0
  126. package/src/generated/components/index.ts +1 -0
  127. package/src/generated/index.ts +1 -0
  128. package/src/generatedIcons.test.tsx +25 -0
  129. package/src/iconLoader.test.ts +16 -0
  130. package/src/{icons-list.md → icons-list.mdx} +5 -1
  131. package/src/{index.md → index.mdx} +2 -1
  132. package/src/isotest.test.ts +37 -0
  133. package/src/{loading-icons.md → loading-icons.mdx} +7 -3
  134. package/src/svgIconContainer.test.tsx +19 -0
  135. package/src/tsconfig.build.json +8 -0
  136. package/src/tsconfig.json +2 -4
  137. package/src/tsconfig.test.json +10 -0
@@ -253,6 +253,7 @@ $blueprint-icons-16-codepoints: (
253
253
  "fork-end": "\f3b7",
254
254
  "form": "\f1c1",
255
255
  "forward-ten": "\f35d",
256
+ "frame-to-frame": "\f3c1",
256
257
  "fuel": "\f323",
257
258
  "full-circle": "\f1c2",
258
259
  "full-stacked-chart": "\f1c3",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blueprintjs/icons",
3
- "version": "6.8.0",
3
+ "version": "6.9.0",
4
4
  "description": "Components, fonts, icons, and css files for creating and displaying icons.",
5
5
  "main": "lib/cjs/generated/index.js",
6
6
  "module": "lib/esm/generated/index.js",
@@ -31,11 +31,12 @@
31
31
  }
32
32
  },
33
33
  "devDependencies": {
34
+ "@testing-library/react": "^16.1.0",
34
35
  "@twbs/fantasticon": "^2.7.2",
36
+ "@vitejs/plugin-react": "^5.1.0",
35
37
  "@types/handlebars": "^4.1.0",
36
- "enzyme": "^3.11.0",
37
38
  "handlebars": "^4.7.8",
38
- "mocha": "^10.2.0",
39
+ "vitest": "4.0.7",
39
40
  "npm-run-all": "^4.1.5",
40
41
  "react": "^18.3.1",
41
42
  "react-dom": "^18.3.1",
@@ -43,8 +44,8 @@
43
44
  "svg-parser": "^2.0.4",
44
45
  "typescript": "~5.9.3",
45
46
  "webpack-cli": "^5.1.4",
46
- "@blueprintjs/stylelint-plugin": "^5.2.2",
47
47
  "@blueprintjs/node-build-scripts": "^9.3.3",
48
+ "@blueprintjs/stylelint-plugin": "^5.2.2",
48
49
  "@blueprintjs/test-commons": "^4.0.4"
49
50
  },
50
51
  "repository": {
@@ -64,9 +65,9 @@
64
65
  "scripts": {
65
66
  "clean": "rm -rf dist/* || rm -rf lib/**/* || rm -rf src/generated/* || true",
66
67
  "compile": "npm-run-all -s \"generate-icon-src\" -p \"compile:*\" -p \"copy:*\"",
67
- "compile:esm": "tsc -p ./src",
68
- "compile:cjs": "tsc -p ./src -m commonjs --verbatimModuleSyntax false --outDir lib/cjs",
69
- "compile:esnext": "tsc -p ./src -t esnext --outDir lib/esnext",
68
+ "compile:esm": "tsc -p ./src/tsconfig.build.json",
69
+ "compile:cjs": "tsc -p ./src/tsconfig.build.json -m commonjs --verbatimModuleSyntax false --outDir lib/cjs",
70
+ "compile:esnext": "tsc -p ./src/tsconfig.build.json -t esnext --outDir lib/esnext",
70
71
  "compile:css": "sass-compile ./src",
71
72
  "copy:scss": "scripts/copy-scss.sh",
72
73
  "copy:fonts": "scripts/copy-fonts.sh",
@@ -79,9 +80,11 @@
79
80
  "lint:scss": "sass-lint",
80
81
  "lint:es": "es-lint",
81
82
  "lint-fix": "es-lint --fix && sass-lint --fix",
82
- "test": "run-s test:typeCheck test:iso",
83
- "test:typeCheck": "tsc -p ./test",
84
- "test:iso": "mocha test/isotest.mjs",
83
+ "test": "run-s test:typeCheck test:iso test:vitest:run",
84
+ "test:typeCheck": "tsc -p ./src/tsconfig.test.json",
85
+ "test:iso": "vitest run --config vitest.config.isotest.mts",
86
+ "test:vitest": "vitest",
87
+ "test:vitest:run": "vitest run",
85
88
  "verify": "npm-run-all compile -p dist test lint"
86
89
  }
87
90
  }
@@ -253,6 +253,7 @@ $blueprint-icons-16-codepoints: (
253
253
  "fork-end": "\f3b7",
254
254
  "form": "\f1c1",
255
255
  "forward-ten": "\f35d",
256
+ "frame-to-frame": "\f3c1",
256
257
  "fuel": "\f323",
257
258
  "full-circle": "\f1c2",
258
259
  "full-stacked-chart": "\f1c3",
@@ -1,8 +1,8 @@
1
1
  @font-face {
2
2
  font-family: "blueprint-icons-16";
3
- src: url("./blueprint-icons-16.ttf?1bbd4e034810af1febd0b12f8ed68993") format("truetype"),
4
- url("./blueprint-icons-16.eot?1bbd4e034810af1febd0b12f8ed68993#iefix") format("embedded-opentype"),
5
- url("./blueprint-icons-16.woff2?1bbd4e034810af1febd0b12f8ed68993") format("woff2"),
6
- url("./blueprint-icons-16.woff?1bbd4e034810af1febd0b12f8ed68993") format("woff"),
7
- url("./blueprint-icons-16.svg?1bbd4e034810af1febd0b12f8ed68993#blueprint-icons-16") format("svg");
3
+ src: url("./blueprint-icons-16.ttf?2f00e8372fbac6b805e2be57c1162e05") format("truetype"),
4
+ url("./blueprint-icons-16.eot?2f00e8372fbac6b805e2be57c1162e05#iefix") format("embedded-opentype"),
5
+ url("./blueprint-icons-16.woff2?2f00e8372fbac6b805e2be57c1162e05") format("woff2"),
6
+ url("./blueprint-icons-16.woff?2f00e8372fbac6b805e2be57c1162e05") format("woff"),
7
+ url("./blueprint-icons-16.svg?2f00e8372fbac6b805e2be57c1162e05#blueprint-icons-16") format("svg");
8
8
  }
@@ -763,6 +763,9 @@
763
763
  <glyph glyph-name="forward-ten"
764
764
  unicode="&#xF35D;"
765
765
  horiz-adv-x="320" d="M160.04 0A136 136 0 0 0 105.4 11.12A142 142 0 0 0 60.98 41.3A144 144 0 0 0 31.02 86.04A138 138 0 0 0 20 141.06Q20 170.42 31.02 196.0200000000001A142 142 0 0 0 61.08 240.7A144 144 0 0 0 105.58 270.9000000000001A136 136 0 0 0 160.2 282H162.42L153.02 291.48A16 16 0 0 0 148.14 303.14Q148.14 309.92 152.8 314.8A16 16 0 0 0 164.56 320A15.6 15.6 0 0 0 176.32 315.2L214.92 276.3A19.4 19.4 0 0 0 220.8 262.3Q220.8 254.26 214.92 248.36L176.32 209.44A15.6 15.6 0 0 0 164.56 204.64A16 16 0 0 0 152.8 209.62A16.4 16.4 0 0 0 148.04 221.18A15.6 15.6 0 0 0 152.8 232.72L162.62 242.64H160.22Q118.12 242.64 88.6 213.08T59.08 141.12T88.46 69.04Q117.8 39.38 160 39.38T231.54 68.94Q260.94 98.48 260.94 140.9Q260.94 149.1 266.62 154.86A18.8 18.8 0 0 0 280.4600000000001 160.6Q288.6 160.6 294.3 154.86T300.0000000000001 140.9Q300.0000000000001 111.8 288.98 86.08A142 142 0 0 0 259.0200000000001 41.3A142 142 0 0 0 214.6400000000001 11.1A135 135 0 0 0 160.0400000000001 -1e-13M180 180H200A20 20 0 0 0 220 160V100A20 20 0 0 0 200 80H180A20 20 0 0 0 160 100V160A20 20 0 0 0 180 180M200 160H180V100H200zM100 170A10 10 0 0 0 110 180H120A20 20 0 0 0 140 160V90A10 10 0 0 0 120 90V160H110A10 10 0 0 0 100 170" />
766
+ <glyph glyph-name="frame-to-frame"
767
+ unicode="&#xF3C1;"
768
+ horiz-adv-x="320" d="M244.2 174.2L194.2 224.2C190.6 227.8 185.6 230 180 230C169 230 160 221 160 210C160 204.4 162.2 199.4 165.8 195.8L181.8 180H90C79 180 70 171 70 160C70 149 79 140 90 140H181.8L166 124.2C162.2 120.6 160 115.6 160 110C160 99 169 90 180 90C185.6 90 190.6 92.2 194.2 95.8L244.2 145.8C247.8 149.4 250 154.4 250 160C250 165.6 247.8 170.6 244.2 174.2zM260 40H320V0H260C238 0 220 18 220 40V93.4L258.4 131.6C259 132.2 259.4000000000001 132.8 260 133.4V40zM320 280H260V186.6C259.4000000000001 187.2 259 187.8 258.4 188.4L220 226.6V280C220 302 238 320 260 320H320V280zM60 133.6C67.4 125.4 78 120 90 120H100V40C100 18 82 0 60 0H0V40H60V133.6zM60 320C82 320 100 302 100 280V200H90C78 200 67.4 194.8 60 186.4V280H0V320H60z" />
766
769
  <glyph glyph-name="fuel"
767
770
  unicode="&#xF323;"
768
771
  horiz-adv-x="320" d="M38.98 300H0V260H40C46.2 260 52 256.78 55.24 251.48L94.54 187.62L67.5 166.02A20 20 0 0 1 60 150.36V42C60 29.86 68.96 20 80 20H300C311.04 20 320 29.84 320 42V280S320 300 300 300H180C170 300 160 290 160 280V240L127.76 214.2L89.1 273A60 60 0 0 1 39 300M280 260V240H200V260z" />
@@ -251,6 +251,7 @@ export type BlueprintIcons_16Id =
251
251
  | "fork"
252
252
  | "form"
253
253
  | "forward-ten"
254
+ | "frame-to-frame"
254
255
  | "fuel"
255
256
  | "full-circle"
256
257
  | "full-stacked-chart"
@@ -957,6 +958,7 @@ export type BlueprintIcons_16Key =
957
958
  | "Fork"
958
959
  | "Form"
959
960
  | "ForwardTen"
961
+ | "FrameToFrame"
960
962
  | "Fuel"
961
963
  | "FullCircle"
962
964
  | "FullStackedChart"
@@ -1663,6 +1665,7 @@ export enum BlueprintIcons_16 {
1663
1665
  Fork = "fork",
1664
1666
  Form = "form",
1665
1667
  ForwardTen = "forward-ten",
1668
+ FrameToFrame = "frame-to-frame",
1666
1669
  Fuel = "fuel",
1667
1670
  FullCircle = "full-circle",
1668
1671
  FullStackedChart = "full-stacked-chart",
@@ -2370,6 +2373,7 @@ export const BLUEPRINT_ICONS_16_CODEPOINTS: { [key in BlueprintIcons_16]: string
2370
2373
  [BlueprintIcons_16.Fork]: "61888",
2371
2374
  [BlueprintIcons_16.Form]: "61889",
2372
2375
  [BlueprintIcons_16.ForwardTen]: "62301",
2376
+ [BlueprintIcons_16.FrameToFrame]: "62401",
2373
2377
  [BlueprintIcons_16.Fuel]: "62243",
2374
2378
  [BlueprintIcons_16.FullCircle]: "61890",
2375
2379
  [BlueprintIcons_16.FullStackedChart]: "61891",
@@ -0,0 +1 @@
1
+ export default ["M12.21 7.29l-2.5-2.5a1.003 1.003 0 00-1.42 1.42l.8.79H4.5c-.55 0-1 .45-1 1s.45 1 1 1h4.59l-.79.79c-.19.18-.3.43-.3.71a1.003 1.003 0 001.71.71l2.5-2.5c.18-.18.29-.43.29-.71 0-.28-.11-.53-.29-.71zM13 14h3v2h-3c-1.1 0-2-.9-2-2v-2.67l1.92-1.91c.03-.03.05-.06.08-.09V14zm3-12h-3v4.67c-.03-.03-.05-.06-.08-.09L11 4.67V2c0-1.1.9-2 2-2h3v2zM3 9.32c.37.41.9.68 1.5.68H5v4c0 1.1-.9 2-2 2H0v-2h3V9.32zM3 0c1.1 0 2 .9 2 2v4h-.5c-.6 0-1.13.26-1.5.68V2H0V0h3z"];
@@ -250,6 +250,7 @@ export { default as Fork } from "./fork";
250
250
  export { default as ForkEnd } from "./fork-end";
251
251
  export { default as Form } from "./form";
252
252
  export { default as ForwardTen } from "./forward-ten";
253
+ export { default as FrameToFrame } from "./frame-to-frame";
253
254
  export { default as Fuel } from "./fuel";
254
255
  export { default as FullCircle } from "./full-circle";
255
256
  export { default as FullStackedChart } from "./full-stacked-chart";
@@ -1,8 +1,8 @@
1
1
  @font-face {
2
2
  font-family: "blueprint-icons-20";
3
- src: url("./blueprint-icons-20.ttf?d8e2a39f1342c7c800d5a48b712961d1") format("truetype"),
4
- url("./blueprint-icons-20.eot?d8e2a39f1342c7c800d5a48b712961d1#iefix") format("embedded-opentype"),
5
- url("./blueprint-icons-20.woff2?d8e2a39f1342c7c800d5a48b712961d1") format("woff2"),
6
- url("./blueprint-icons-20.woff?d8e2a39f1342c7c800d5a48b712961d1") format("woff"),
7
- url("./blueprint-icons-20.svg?d8e2a39f1342c7c800d5a48b712961d1#blueprint-icons-20") format("svg");
3
+ src: url("./blueprint-icons-20.ttf?cb1df47fd41c31c8c318077d83160ee5") format("truetype"),
4
+ url("./blueprint-icons-20.eot?cb1df47fd41c31c8c318077d83160ee5#iefix") format("embedded-opentype"),
5
+ url("./blueprint-icons-20.woff2?cb1df47fd41c31c8c318077d83160ee5") format("woff2"),
6
+ url("./blueprint-icons-20.woff?cb1df47fd41c31c8c318077d83160ee5") format("woff"),
7
+ url("./blueprint-icons-20.svg?cb1df47fd41c31c8c318077d83160ee5#blueprint-icons-20") format("svg");
8
8
  }
@@ -763,6 +763,9 @@
763
763
  <glyph glyph-name="forward-ten"
764
764
  unicode="&#xF35D;"
765
765
  horiz-adv-x="400" d="M195.08 0A170 170 0 0 0 126.74 13.86A178 178 0 0 0 71.3 51.3A178 178 0 0 0 33.86 106.74A170 170 0 0 0 20 175.08A170 170 0 0 0 33.86 243.4A178 178 0 0 0 71.3 298.8400000000001A178 178 0 0 0 126.74 336.28A170 170 0 0 0 195.08 350.14H197.98L181.46 366.68A18 18 0 0 0 175.86 380.28Q176.1 388.08 181.46 393.92A20 20 0 0 0 202.86 398.7200000000001A18 18 0 0 0 209.18 394.4L259.26 344.3A18.6 18.6 0 0 0 265.1 330.7Q265.1 322.9 259.26 317.08L209.2 266.98A18 18 0 0 0 195.34 261.38A20 20 0 0 0 177.22 288.48A18 18 0 0 0 181.48 294.7L198 311.24H195.1Q138.18 311.24 98.56 271.6Q58.9 232 58.9 175.08T98.54 78.54Q138.16 38.9 195.0800000000001 38.9T291.6 78.54T331.24 175.08A18.8 18.8 0 0 0 336.8400000000001 188.94A18.8 18.8 0 0 0 350.7000000000001 194.54Q358.9600000000001 194.54 364.5400000000001 188.94A18.8 18.8 0 0 0 370.1400000000001 175.08A170 170 0 0 0 356.2800000000001 106.74A178 178 0 0 0 318.8400000000001 51.3A178 178 0 0 0 263.4000000000001 13.86A170 170 0 0 0 195.08 0M230 210V150H250V210zM220 240H260A20 20 0 0 0 280 220V140A20 20 0 0 0 260 120H220A20 20 0 0 0 200 140V220A20 20 0 0 0 220 240M180 220V135A15 15 0 1 0 150 135V210H135A15 15 0 0 0 135 240H160A20 20 0 0 0 180 220" />
766
+ <glyph glyph-name="frame-to-frame"
767
+ unicode="&#xF3C1;"
768
+ horiz-adv-x="400" d="M294.2000000000001 214.2L224.2 284.2C220.6 287.8 215.6 290 210 290C199 290 190 281 190 270C190 264.4 192.2 259.4 195.8 255.8C199.4 252.2 231.8 220 231.8 220H120C109 220 100 211 100 200C100 189 109 180 120 180H231.8L196 144.2C192.2 140.6 190 135.6 190 130C190 119 199 110 210 110C215.6 110 220.6 112.2 224.2 115.8L294.2000000000001 185.8C297.8 189.4 300 194.4 300 200C300 205.6 297.8 210.6 294.2000000000001 214.2zM100 165.4C105.8 162 112.8 160 120 160H140V40C140 18 122 0 100 0H0V40H100V165.4zM100 400C122 400 140 382 140 360V240H120C112.8 240 105.8 238 100 234.6V360H0V400H100zM300 40H400V0H300C278 0 260 18 260 40V123.4L300 163.4V40zM400 360H300V236.6L260 276.6V360C260 382 278 400 300 400H400V360z" />
766
769
  <glyph glyph-name="fuel"
767
770
  unicode="&#xF323;"
768
771
  horiz-adv-x="400" d="M43.92 360H0V320H40C46.34 320 52.38 317.2200000000001 56.5 312.4L126.36 230.9L88.9 205.94A20 20 0 0 1 80 189.3V40C80 30 90 20 100 20H380C390 20 400 30 400 40V258Q400 259 399.92 260H400V340S400 360 380 360H220C210 360 200 350 200 340V280L162.4 254.92L89.26 339.3A60 60 0 0 1 43.92 360M360 320V280H240V320z" />
@@ -251,6 +251,7 @@ export type BlueprintIcons_20Id =
251
251
  | "fork"
252
252
  | "form"
253
253
  | "forward-ten"
254
+ | "frame-to-frame"
254
255
  | "fuel"
255
256
  | "full-circle"
256
257
  | "full-stacked-chart"
@@ -957,6 +958,7 @@ export type BlueprintIcons_20Key =
957
958
  | "Fork"
958
959
  | "Form"
959
960
  | "ForwardTen"
961
+ | "FrameToFrame"
960
962
  | "Fuel"
961
963
  | "FullCircle"
962
964
  | "FullStackedChart"
@@ -1663,6 +1665,7 @@ export enum BlueprintIcons_20 {
1663
1665
  Fork = "fork",
1664
1666
  Form = "form",
1665
1667
  ForwardTen = "forward-ten",
1668
+ FrameToFrame = "frame-to-frame",
1666
1669
  Fuel = "fuel",
1667
1670
  FullCircle = "full-circle",
1668
1671
  FullStackedChart = "full-stacked-chart",
@@ -2370,6 +2373,7 @@ export const BLUEPRINT_ICONS_20_CODEPOINTS: { [key in BlueprintIcons_20]: string
2370
2373
  [BlueprintIcons_20.Fork]: "61888",
2371
2374
  [BlueprintIcons_20.Form]: "61889",
2372
2375
  [BlueprintIcons_20.ForwardTen]: "62301",
2376
+ [BlueprintIcons_20.FrameToFrame]: "62401",
2373
2377
  [BlueprintIcons_20.Fuel]: "62243",
2374
2378
  [BlueprintIcons_20.FullCircle]: "61890",
2375
2379
  [BlueprintIcons_20.FullStackedChart]: "61891",
@@ -0,0 +1 @@
1
+ export default ["M14.71 9.29l-3.5-3.5a1.003 1.003 0 00-1.42 1.42L11.59 9H6c-.55 0-1 .45-1 1s.45 1 1 1h5.59L9.8 12.79c-.19.18-.3.43-.3.71a1.003 1.003 0 001.71.71l3.5-3.5c.18-.18.29-.43.29-.71 0-.28-.11-.53-.29-.71zM5 11.73c.29.17.64.27 1 .27h1v6c0 1.1-.9 2-2 2H0v-2h5v-6.27zM5 0c1.1 0 2 .9 2 2v6H6c-.36 0-.71.1-1 .27V2H0V0h5zm10 18h5v2h-5c-1.1 0-2-.9-2-2v-4.17l2-2V18zm5-16h-5v6.17l-2-2V2c0-1.1.9-2 2-2h5v2z"];
@@ -250,6 +250,7 @@ export { default as Fork } from "./fork";
250
250
  export { default as ForkEnd } from "./fork-end";
251
251
  export { default as Form } from "./form";
252
252
  export { default as ForwardTen } from "./forward-ten";
253
+ export { default as FrameToFrame } from "./frame-to-frame";
253
254
  export { default as Fuel } from "./fuel";
254
255
  export { default as FullCircle } from "./full-circle";
255
256
  export { default as FullStackedChart } from "./full-stacked-chart";
@@ -0,0 +1,38 @@
1
+ /*
2
+ * Copyright 2024 Palantir Technologies, Inc. All rights reserved.
3
+ * Licensed under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License.
5
+ * You may obtain a copy of the License at
6
+ *
7
+ * http://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software
10
+ * distributed under the License is distributed on an "AS IS" BASIS,
11
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ * See the License for the specific language governing permissions and
13
+ * limitations under the License.
14
+ */
15
+
16
+ import * as React from "react";
17
+ import type { SVGIconProps } from "../../svgIconProps";
18
+ import { IconSize } from "../../iconTypes";
19
+ import { SVGIconContainer } from "../../svgIconContainer";
20
+
21
+ export const FrameToFrame: React.FC<SVGIconProps> = React.forwardRef<any, SVGIconProps>((props, ref) => {
22
+ const isLarge = (props.size ?? IconSize.STANDARD) >= IconSize.LARGE;
23
+ const pixelGridSize = isLarge ? IconSize.LARGE : IconSize.STANDARD;
24
+ const translation = `${-1 * pixelGridSize / 0.05 / 2}`;
25
+ const style = { transformOrigin: "center" };
26
+ return (
27
+ <SVGIconContainer iconName="frame-to-frame" ref={ref} {...props}>
28
+ <path
29
+ d={isLarge ? "M294.2000000000001 214.2L224.2 284.2C220.6 287.8 215.6 290 210 290C199 290 190 281 190 270C190 264.4 192.2 259.4 195.8 255.8C199.4 252.2 231.8 220 231.8 220H120C109 220 100 211 100 200C100 189 109 180 120 180H231.8L196 144.2C192.2 140.6 190 135.6 190 130C190 119 199 110 210 110C215.6 110 220.6 112.2 224.2 115.8L294.2000000000001 185.8C297.8 189.4 300 194.4 300 200C300 205.6 297.8 210.6 294.2000000000001 214.2zM100 165.4C105.8 162 112.8 160 120 160H140V40C140 18 122 0 100 0H0V40H100V165.4zM100 400C122 400 140 382 140 360V240H120C112.8 240 105.8 238 100 234.6V360H0V400H100zM300 40H400V0H300C278 0 260 18 260 40V123.4L300 163.4V40zM400 360H300V236.6L260 276.6V360C260 382 278 400 300 400H400V360z" : "M244.2 174.2L194.2 224.2C190.6 227.8 185.6 230 180 230C169 230 160 221 160 210C160 204.4 162.2 199.4 165.8 195.8L181.8 180H90C79 180 70 171 70 160C70 149 79 140 90 140H181.8L166 124.2C162.2 120.6 160 115.6 160 110C160 99 169 90 180 90C185.6 90 190.6 92.2 194.2 95.8L244.2 145.8C247.8 149.4 250 154.4 250 160C250 165.6 247.8 170.6 244.2 174.2zM260 40H320V0H260C238 0 220 18 220 40V93.4L258.4 131.6C259 132.2 259.4000000000001 132.8 260 133.4V40zM320 280H260V186.6C259.4000000000001 187.2 259 187.8 258.4 188.4L220 226.6V280C220 302 238 320 260 320H320V280zM60 133.6C67.4 125.4 78 120 90 120H100V40C100 18 82 0 60 0H0V40H60V133.6zM60 320C82 320 100 302 100 280V200H90C78 200 67.4 194.8 60 186.4V280H0V320H60z"}
30
+ fillRule="evenodd"
31
+ transform={`scale(0.05, -0.05) translate(${translation}, ${translation})`}
32
+ style={style}
33
+ />
34
+ </SVGIconContainer>
35
+ );
36
+ });
37
+ FrameToFrame.displayName = `Blueprint6.Icon.FrameToFrame`;
38
+ export default FrameToFrame;
@@ -265,6 +265,7 @@ export { ForkEnd } from "./fork-end";
265
265
  export { Fork } from "./fork";
266
266
  export { Form } from "./form";
267
267
  export { ForwardTen } from "./forward-ten";
268
+ export { FrameToFrame } from "./frame-to-frame";
268
269
  export { Fuel } from "./fuel";
269
270
  export { FullCircle } from "./full-circle";
270
271
  export { FullStackedChart } from "./full-stacked-chart";
@@ -268,6 +268,7 @@ export { ForkEnd } from "./components/fork-end";
268
268
  export { Fork } from "./components/fork";
269
269
  export { Form } from "./components/form";
270
270
  export { ForwardTen } from "./components/forward-ten";
271
+ export { FrameToFrame } from "./components/frame-to-frame";
271
272
  export { Fuel } from "./components/fuel";
272
273
  export { FullCircle } from "./components/full-circle";
273
274
  export { FullStackedChart } from "./components/full-stacked-chart";
@@ -0,0 +1,25 @@
1
+ /*
2
+ * Copyright 2023 Palantir Technologies, Inc. All rights reserved.
3
+ */
4
+
5
+ import { render } from "@testing-library/react";
6
+ import { describe, it } from "vitest";
7
+
8
+ import { Add } from "./generated/components";
9
+
10
+ describe("<Add> icon component", () => {
11
+ it("allows attaching an event handler", () => {
12
+ const handleClick: React.MouseEventHandler<HTMLSpanElement> = () => undefined;
13
+ render(<Add onClick={handleClick} />);
14
+ });
15
+
16
+ it("disallows child elements", () => {
17
+ const handleClick: React.MouseEventHandler<HTMLSpanElement> = () => undefined;
18
+ render(
19
+ <Add onClick={handleClick}>
20
+ {/* @ts-expect-error */}
21
+ <path />
22
+ </Add>,
23
+ );
24
+ });
25
+ });
@@ -0,0 +1,16 @@
1
+ /*
2
+ * Copyright 2023 Palantir Technologies, Inc. All rights reserved.
3
+ */
4
+
5
+ import { describe, it } from "vitest";
6
+
7
+ import { getIconPaths } from "./allPaths";
8
+ import { Icons } from "./iconLoader";
9
+
10
+ describe("IconLoader", () => {
11
+ it("is compatible with getIconPaths", () => {
12
+ Icons.loadAll({
13
+ loader: async (name, size) => getIconPaths(name, size),
14
+ });
15
+ });
16
+ });
@@ -1,4 +1,8 @@
1
- @# Icons list
1
+ ---
2
+ title: Icons list
3
+ ---
4
+
5
+ # Icons list
2
6
 
3
7
  Blueprint provides over 500 vector UI icons in two sizes (16px and 20px) and two formats (SVG and fonts).
4
8
  Be sure to check out the docs on [loading icons](#icons/loading-icons) and how to use their
@@ -1,8 +1,9 @@
1
1
  ---
2
+ title: Icons
2
3
  reference: icons
3
4
  ---
4
5
 
5
- @# Icons
6
+ # Icons
6
7
 
7
8
  The [**@blueprintjs/icons** NPM package](https://www.npmjs.com/package/@blueprintjs/icons)
8
9
  provides over 500 vector UI icons in two sizes (16px and 20px) and two formats (SVG and fonts).
@@ -0,0 +1,37 @@
1
+ /*
2
+ * Copyright 2026 Palantir Technologies, Inc. All rights reserved.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import { createElement } from "react";
18
+ import { describe } from "vitest";
19
+
20
+ import { generateIsomorphicTestsVitest } from "@blueprintjs/test-commons";
21
+
22
+ import * as Icons from "./generated/index";
23
+
24
+ describe("@blueprintjs/icons isomorphic rendering", () => {
25
+ generateIsomorphicTestsVitest(
26
+ Icons,
27
+ {
28
+ SVGIconContainer: {
29
+ children: createElement("path"),
30
+ props: {
31
+ iconName: "add",
32
+ },
33
+ },
34
+ },
35
+ { excludedSymbols: ["Icons"] },
36
+ );
37
+ });
@@ -1,4 +1,8 @@
1
- @# Loading icons
1
+ ---
2
+ title: Loading icons
3
+ ---
4
+
5
+ # Loading icons
2
6
 
3
7
  As of Blueprint v5.0, icons are no longer loaded by default through the main package entry points. This allows you the flexibility
4
8
  to bundle only the icons you use in your application. There are a few different ways to load icons, and you may mix some of the
@@ -10,7 +14,7 @@ See the [**`Icon` component documentation**](#core/components/icon) (in the `@bl
10
14
 
11
15
  </div>
12
16
 
13
- @## Using static imports
17
+ ## Using static imports
14
18
 
15
19
  Blueprint's icon prop APIs accept a JSX element. When you use this type, you are expected to supply an SVG React element imported
16
20
  from the icons package.
@@ -32,7 +36,7 @@ This approach has benefits and tradeoffs:
32
36
  - You do have to explicitly import each icon you use as an ES import.
33
37
  - You do have to take care to specify the correct icon size (if it is not the default 16px size) depending on the usage context.
34
38
 
35
- @## Using dynamic imports
39
+ ## Using dynamic imports
36
40
 
37
41
  Blueprint's icon props APIs _also_ accept a type-safe icon name string literal. This approach has some benefits:
38
42
 
@@ -0,0 +1,19 @@
1
+ /*
2
+ * Copyright 2023 Palantir Technologies, Inc. All rights reserved.
3
+ */
4
+
5
+ import { render } from "@testing-library/react";
6
+ import { describe, it } from "vitest";
7
+
8
+ import { SVGIconContainer } from "./svgIconContainer";
9
+
10
+ describe("SVGIconContainer", () => {
11
+ it("accepts generic type param specifying the type of the root element", () => {
12
+ const handleClick: React.MouseEventHandler<HTMLSpanElement> = () => undefined;
13
+ render(
14
+ <SVGIconContainer<HTMLSpanElement> iconName="add" onClick={handleClick}>
15
+ <path />
16
+ </SVGIconContainer>,
17
+ );
18
+ });
19
+ });
@@ -0,0 +1,8 @@
1
+ {
2
+ "extends": "../../../config/tsconfig.web",
3
+ "compilerOptions": {
4
+ "composite": true,
5
+ "outDir": "../lib/esm"
6
+ },
7
+ "exclude": ["**/*.test.ts", "**/*.test.tsx", "**/*.test.mts"]
8
+ }
package/src/tsconfig.json CHANGED
@@ -1,6 +1,4 @@
1
1
  {
2
- "extends": "../../../config/tsconfig.web",
3
- "compilerOptions": {
4
- "outDir": "../lib/esm"
5
- }
2
+ "files": [],
3
+ "references": [{ "path": "./tsconfig.build.json" }, { "path": "./tsconfig.test.json" }]
6
4
  }
@@ -0,0 +1,10 @@
1
+ {
2
+ "extends": "./tsconfig.build.json",
3
+ "compilerOptions": {
4
+ "composite": true,
5
+ "noEmit": true,
6
+ "skipLibCheck": true
7
+ },
8
+ "include": ["**/*.ts", "**/*.tsx", "**/*.test.ts", "**/*.test.tsx", "**/*.test.mts"],
9
+ "exclude": []
10
+ }