@btndprojects/loam-icons 0.1.1 → 0.2.1

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/README.md CHANGED
@@ -64,3 +64,5 @@ Guides, live examples and the full API are on **[loam.btndprojects.com](https://
64
64
  ## License
65
65
 
66
66
  MIT © Nuszpl Botond
67
+
68
+ The icon geometry is derived from Lucide (ISC) and Feather (MIT); their licenses are reproduced in [`THIRD-PARTY-NOTICES`](./THIRD-PARTY-NOTICES).
package/dist/index.d.ts CHANGED
@@ -651,6 +651,19 @@ declare const iconData: {
651
651
  t: "path";
652
652
  d: string;
653
653
  }[];
654
+ cart: ({
655
+ t: "circle";
656
+ cx: number;
657
+ cy: number;
658
+ r: number;
659
+ d?: undefined;
660
+ } | {
661
+ t: "path";
662
+ d: string;
663
+ cx?: undefined;
664
+ cy?: undefined;
665
+ r?: undefined;
666
+ })[];
654
667
  coins: ({
655
668
  t: "path";
656
669
  d: string;
@@ -839,6 +852,155 @@ declare const iconData: {
839
852
  cy?: undefined;
840
853
  r?: undefined;
841
854
  })[];
855
+ 'chevrons-left': {
856
+ t: "path";
857
+ d: string;
858
+ }[];
859
+ 'chevrons-right': {
860
+ t: "path";
861
+ d: string;
862
+ }[];
863
+ 'thumbs-up': {
864
+ t: "path";
865
+ d: string;
866
+ }[];
867
+ 'thumbs-down': {
868
+ t: "path";
869
+ d: string;
870
+ }[];
871
+ stop: {
872
+ t: "rect";
873
+ x: number;
874
+ y: number;
875
+ width: number;
876
+ height: number;
877
+ rx: number;
878
+ }[];
879
+ paperclip: {
880
+ t: "path";
881
+ d: string;
882
+ }[];
883
+ brain: {
884
+ t: "path";
885
+ d: string;
886
+ }[];
887
+ message: {
888
+ t: "path";
889
+ d: string;
890
+ }[];
891
+ 'folder-open': {
892
+ t: "path";
893
+ d: string;
894
+ }[];
895
+ 'folder-plus': {
896
+ t: "path";
897
+ d: string;
898
+ }[];
899
+ 'folder-up': {
900
+ t: "path";
901
+ d: string;
902
+ }[];
903
+ 'folder-input': {
904
+ t: "path";
905
+ d: string;
906
+ }[];
907
+ 'file-text': {
908
+ t: "path";
909
+ d: string;
910
+ }[];
911
+ 'file-code': {
912
+ t: "path";
913
+ d: string;
914
+ }[];
915
+ 'file-image': ({
916
+ t: "path";
917
+ d: string;
918
+ cx?: undefined;
919
+ cy?: undefined;
920
+ r?: undefined;
921
+ } | {
922
+ t: "circle";
923
+ cx: number;
924
+ cy: number;
925
+ r: number;
926
+ d?: undefined;
927
+ })[];
928
+ 'file-video': {
929
+ t: "path";
930
+ d: string;
931
+ }[];
932
+ 'file-audio': ({
933
+ t: "path";
934
+ d: string;
935
+ cx?: undefined;
936
+ cy?: undefined;
937
+ r?: undefined;
938
+ } | {
939
+ t: "circle";
940
+ cx: number;
941
+ cy: number;
942
+ r: number;
943
+ d?: undefined;
944
+ })[];
945
+ 'file-sheet': {
946
+ t: "path";
947
+ d: string;
948
+ }[];
949
+ 'file-slides': {
950
+ t: "path";
951
+ d: string;
952
+ }[];
953
+ 'file-archive': ({
954
+ t: "path";
955
+ d: string;
956
+ cx?: undefined;
957
+ cy?: undefined;
958
+ r?: undefined;
959
+ } | {
960
+ t: "circle";
961
+ cx: number;
962
+ cy: number;
963
+ r: number;
964
+ d?: undefined;
965
+ })[];
966
+ 'hard-drive': {
967
+ t: "path";
968
+ d: string;
969
+ }[];
970
+ scissors: ({
971
+ t: "circle";
972
+ cx: number;
973
+ cy: number;
974
+ r: number;
975
+ d?: undefined;
976
+ } | {
977
+ t: "path";
978
+ d: string;
979
+ cx?: undefined;
980
+ cy?: undefined;
981
+ r?: undefined;
982
+ })[];
983
+ clipboard: ({
984
+ t: "path";
985
+ d: string;
986
+ x?: undefined;
987
+ y?: undefined;
988
+ width?: undefined;
989
+ height?: undefined;
990
+ rx?: undefined;
991
+ } | {
992
+ t: "rect";
993
+ x: number;
994
+ y: number;
995
+ width: number;
996
+ height: number;
997
+ rx: number;
998
+ d?: undefined;
999
+ })[];
1000
+ rename: {
1001
+ t: "path";
1002
+ d: string;
1003
+ }[];
842
1004
  sparkle: ({
843
1005
  t: "path";
844
1006
  d: string;
@@ -869,6 +1031,395 @@ declare const iconData: {
869
1031
  rx: number;
870
1032
  d?: undefined;
871
1033
  })[];
1034
+ 'key-command': {
1035
+ t: "path";
1036
+ d: string;
1037
+ }[];
1038
+ 'key-shift': {
1039
+ t: "path";
1040
+ d: string;
1041
+ }[];
1042
+ 'key-option': {
1043
+ t: "path";
1044
+ d: string;
1045
+ }[];
1046
+ 'key-control': {
1047
+ t: "path";
1048
+ d: string;
1049
+ }[];
1050
+ 'key-enter': {
1051
+ t: "path";
1052
+ d: string;
1053
+ }[];
1054
+ 'key-tab': {
1055
+ t: "path";
1056
+ d: string;
1057
+ }[];
1058
+ 'key-backspace': {
1059
+ t: "path";
1060
+ d: string;
1061
+ }[];
1062
+ 'key-space': {
1063
+ t: "path";
1064
+ d: string;
1065
+ }[];
1066
+ 'key-capslock': {
1067
+ t: "path";
1068
+ d: string;
1069
+ }[];
1070
+ 'git-branch': ({
1071
+ t: "path";
1072
+ d: string;
1073
+ cx?: undefined;
1074
+ cy?: undefined;
1075
+ r?: undefined;
1076
+ } | {
1077
+ t: "circle";
1078
+ cx: number;
1079
+ cy: number;
1080
+ r: number;
1081
+ d?: undefined;
1082
+ })[];
1083
+ 'git-commit': ({
1084
+ t: "circle";
1085
+ cx: number;
1086
+ cy: number;
1087
+ r: number;
1088
+ x1?: undefined;
1089
+ y1?: undefined;
1090
+ x2?: undefined;
1091
+ y2?: undefined;
1092
+ } | {
1093
+ t: "line";
1094
+ x1: number;
1095
+ y1: number;
1096
+ x2: number;
1097
+ y2: number;
1098
+ cx?: undefined;
1099
+ cy?: undefined;
1100
+ r?: undefined;
1101
+ })[];
1102
+ 'git-diff': ({
1103
+ t: "circle";
1104
+ cx: number;
1105
+ cy: number;
1106
+ r: number;
1107
+ d?: undefined;
1108
+ } | {
1109
+ t: "path";
1110
+ d: string;
1111
+ cx?: undefined;
1112
+ cy?: undefined;
1113
+ r?: undefined;
1114
+ })[];
1115
+ 'git-fork': ({
1116
+ t: "circle";
1117
+ cx: number;
1118
+ cy: number;
1119
+ r: number;
1120
+ d?: undefined;
1121
+ } | {
1122
+ t: "path";
1123
+ d: string;
1124
+ cx?: undefined;
1125
+ cy?: undefined;
1126
+ r?: undefined;
1127
+ })[];
1128
+ 'git-merge': ({
1129
+ t: "circle";
1130
+ cx: number;
1131
+ cy: number;
1132
+ r: number;
1133
+ d?: undefined;
1134
+ } | {
1135
+ t: "path";
1136
+ d: string;
1137
+ cx?: undefined;
1138
+ cy?: undefined;
1139
+ r?: undefined;
1140
+ })[];
1141
+ 'git-pull-request': ({
1142
+ t: "circle";
1143
+ cx: number;
1144
+ cy: number;
1145
+ r: number;
1146
+ d?: undefined;
1147
+ x1?: undefined;
1148
+ y1?: undefined;
1149
+ x2?: undefined;
1150
+ y2?: undefined;
1151
+ } | {
1152
+ t: "path";
1153
+ d: string;
1154
+ cx?: undefined;
1155
+ cy?: undefined;
1156
+ r?: undefined;
1157
+ x1?: undefined;
1158
+ y1?: undefined;
1159
+ x2?: undefined;
1160
+ y2?: undefined;
1161
+ } | {
1162
+ t: "line";
1163
+ x1: number;
1164
+ y1: number;
1165
+ x2: number;
1166
+ y2: number;
1167
+ cx?: undefined;
1168
+ cy?: undefined;
1169
+ r?: undefined;
1170
+ d?: undefined;
1171
+ })[];
1172
+ terminal: ({
1173
+ t: "path";
1174
+ d: string;
1175
+ x?: undefined;
1176
+ y?: undefined;
1177
+ width?: undefined;
1178
+ height?: undefined;
1179
+ rx?: undefined;
1180
+ ry?: undefined;
1181
+ } | {
1182
+ t: "rect";
1183
+ x: number;
1184
+ y: number;
1185
+ width: number;
1186
+ height: number;
1187
+ rx: number;
1188
+ ry: number;
1189
+ d?: undefined;
1190
+ })[];
1191
+ package: ({
1192
+ t: "path";
1193
+ d: string;
1194
+ points?: undefined;
1195
+ } | {
1196
+ t: "polyline";
1197
+ points: string;
1198
+ d?: undefined;
1199
+ })[];
1200
+ box: {
1201
+ t: "path";
1202
+ d: string;
1203
+ }[];
1204
+ network: ({
1205
+ t: "rect";
1206
+ x: number;
1207
+ y: number;
1208
+ width: number;
1209
+ height: number;
1210
+ rx: number;
1211
+ d?: undefined;
1212
+ } | {
1213
+ t: "path";
1214
+ d: string;
1215
+ x?: undefined;
1216
+ y?: undefined;
1217
+ width?: undefined;
1218
+ height?: undefined;
1219
+ rx?: undefined;
1220
+ })[];
1221
+ devices: ({
1222
+ t: "path";
1223
+ d: string;
1224
+ x?: undefined;
1225
+ y?: undefined;
1226
+ width?: undefined;
1227
+ height?: undefined;
1228
+ rx?: undefined;
1229
+ } | {
1230
+ t: "rect";
1231
+ x: number;
1232
+ y: number;
1233
+ width: number;
1234
+ height: number;
1235
+ rx: number;
1236
+ d?: undefined;
1237
+ })[];
1238
+ activity: {
1239
+ t: "path";
1240
+ d: string;
1241
+ }[];
1242
+ sparkles: ({
1243
+ t: "path";
1244
+ d: string;
1245
+ cx?: undefined;
1246
+ cy?: undefined;
1247
+ r?: undefined;
1248
+ } | {
1249
+ t: "circle";
1250
+ cx: number;
1251
+ cy: number;
1252
+ r: number;
1253
+ d?: undefined;
1254
+ })[];
1255
+ 'panel-left': ({
1256
+ t: "rect";
1257
+ x: number;
1258
+ y: number;
1259
+ width: number;
1260
+ height: number;
1261
+ rx: number;
1262
+ d?: undefined;
1263
+ } | {
1264
+ t: "path";
1265
+ d: string;
1266
+ x?: undefined;
1267
+ y?: undefined;
1268
+ width?: undefined;
1269
+ height?: undefined;
1270
+ rx?: undefined;
1271
+ })[];
1272
+ inbox: ({
1273
+ t: "polyline";
1274
+ points: string;
1275
+ d?: undefined;
1276
+ } | {
1277
+ t: "path";
1278
+ d: string;
1279
+ points?: undefined;
1280
+ })[];
1281
+ 'message-square': {
1282
+ t: "path";
1283
+ d: string;
1284
+ }[];
1285
+ mic: ({
1286
+ t: "path";
1287
+ d: string;
1288
+ x?: undefined;
1289
+ y?: undefined;
1290
+ width?: undefined;
1291
+ height?: undefined;
1292
+ rx?: undefined;
1293
+ } | {
1294
+ t: "rect";
1295
+ x: number;
1296
+ y: number;
1297
+ width: number;
1298
+ height: number;
1299
+ rx: number;
1300
+ d?: undefined;
1301
+ })[];
1302
+ video: ({
1303
+ t: "path";
1304
+ d: string;
1305
+ x?: undefined;
1306
+ y?: undefined;
1307
+ width?: undefined;
1308
+ height?: undefined;
1309
+ rx?: undefined;
1310
+ } | {
1311
+ t: "rect";
1312
+ x: number;
1313
+ y: number;
1314
+ width: number;
1315
+ height: number;
1316
+ rx: number;
1317
+ d?: undefined;
1318
+ })[];
1319
+ 'at-sign': ({
1320
+ t: "circle";
1321
+ cx: number;
1322
+ cy: number;
1323
+ r: number;
1324
+ d?: undefined;
1325
+ } | {
1326
+ t: "path";
1327
+ d: string;
1328
+ cx?: undefined;
1329
+ cy?: undefined;
1330
+ r?: undefined;
1331
+ })[];
1332
+ flag: {
1333
+ t: "path";
1334
+ d: string;
1335
+ }[];
1336
+ list: {
1337
+ t: "path";
1338
+ d: string;
1339
+ }[];
1340
+ table: ({
1341
+ t: "path";
1342
+ d: string;
1343
+ x?: undefined;
1344
+ y?: undefined;
1345
+ width?: undefined;
1346
+ height?: undefined;
1347
+ rx?: undefined;
1348
+ } | {
1349
+ t: "rect";
1350
+ x: number;
1351
+ y: number;
1352
+ width: number;
1353
+ height: number;
1354
+ rx: number;
1355
+ d?: undefined;
1356
+ })[];
1357
+ square: {
1358
+ t: "rect";
1359
+ x: number;
1360
+ y: number;
1361
+ width: number;
1362
+ height: number;
1363
+ rx: number;
1364
+ }[];
1365
+ dot: {
1366
+ t: "circle";
1367
+ cx: number;
1368
+ cy: number;
1369
+ r: number;
1370
+ }[];
1371
+ 'circle-dot': {
1372
+ t: "circle";
1373
+ cx: number;
1374
+ cy: number;
1375
+ r: number;
1376
+ }[];
1377
+ 'x-circle': ({
1378
+ t: "circle";
1379
+ cx: number;
1380
+ cy: number;
1381
+ r: number;
1382
+ d?: undefined;
1383
+ } | {
1384
+ t: "path";
1385
+ d: string;
1386
+ cx?: undefined;
1387
+ cy?: undefined;
1388
+ r?: undefined;
1389
+ })[];
1390
+ 'help-circle': ({
1391
+ t: "circle";
1392
+ cx: number;
1393
+ cy: number;
1394
+ r: number;
1395
+ d?: undefined;
1396
+ } | {
1397
+ t: "path";
1398
+ d: string;
1399
+ cx?: undefined;
1400
+ cy?: undefined;
1401
+ r?: undefined;
1402
+ })[];
1403
+ 'rotate-ccw': {
1404
+ t: "path";
1405
+ d: string;
1406
+ }[];
1407
+ minimize: {
1408
+ t: "path";
1409
+ d: string;
1410
+ }[];
1411
+ 'arrow-down-up': {
1412
+ t: "path";
1413
+ d: string;
1414
+ }[];
1415
+ 'arrow-up-right': {
1416
+ t: "path";
1417
+ d: string;
1418
+ }[];
1419
+ 'corner-down-right': {
1420
+ t: "path";
1421
+ d: string;
1422
+ }[];
872
1423
  };
873
1424
 
874
1425
  /**
package/dist/index.js CHANGED
@@ -472,6 +472,16 @@ var iconData = {
472
472
  },
473
473
  { t: "path", d: "M3 5v14a2 2 0 0 0 2 2h15a1 1 0 0 0 1-1v-4" }
474
474
  ],
475
+ // ---- payments ----
476
+ // The basket an add-to-cart flies into.
477
+ cart: [
478
+ { t: "circle", cx: 8, cy: 21, r: 1 },
479
+ { t: "circle", cx: 19, cy: 21, r: 1 },
480
+ {
481
+ t: "path",
482
+ d: "M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12"
483
+ }
484
+ ],
475
485
  // Instalments and account credit — money that arrives in pieces.
476
486
  coins: [
477
487
  { t: "path", d: "M13.744 17.736a6 6 0 1 1-7.48-7.48" },
@@ -654,6 +664,214 @@ var iconData = {
654
664
  { t: "line", x1: 21, y1: 21, x2: 16.65, y2: 16.65 },
655
665
  { t: "line", x1: 8, y1: 11, x2: 14, y2: 11 }
656
666
  ],
667
+ // Step a whole window back — a time range shifted by its own length. A single
668
+ // chevron already means “previous page” or “previous month”; the double one says
669
+ // the step is the size of what is on screen.
670
+ "chevrons-left": [
671
+ { t: "path", d: "m11 17-5-5 5-5" },
672
+ { t: "path", d: "m18 17-5-5 5-5" }
673
+ ],
674
+ // The mirror of `chevrons-left`.
675
+ "chevrons-right": [
676
+ { t: "path", d: "m6 17 5-5-5-5" },
677
+ { t: "path", d: "m13 17 5-5-5-5" }
678
+ ],
679
+ // ---- chat ----
680
+ // Positive feedback on an assistant answer. A star rates; a thumb only says “this helped”.
681
+ "thumbs-up": [
682
+ {
683
+ t: "path",
684
+ d: "M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"
685
+ },
686
+ { t: "path", d: "M7 10v12" }
687
+ ],
688
+ // The mirror of `thumbs-up`.
689
+ "thumbs-down": [
690
+ {
691
+ t: "path",
692
+ d: "M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"
693
+ },
694
+ { t: "path", d: "M17 14V2" }
695
+ ],
696
+ // Stop a generation in flight. `pause` would promise a resume the stream cannot offer.
697
+ stop: [{ t: "rect", x: 3, y: 3, width: 18, height: 18, rx: 2 }],
698
+ // Attach a file to a message.
699
+ paperclip: [
700
+ {
701
+ t: "path",
702
+ d: "m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551"
703
+ }
704
+ ],
705
+ // An assistant’s reasoning, as distinct from its answer.
706
+ brain: [
707
+ { t: "path", d: "M12 18V5" },
708
+ { t: "path", d: "M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4" },
709
+ { t: "path", d: "M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5" },
710
+ { t: "path", d: "M17.997 5.125a4 4 0 0 1 2.526 5.77" },
711
+ { t: "path", d: "M18 18a4 4 0 0 0 2-7.464" },
712
+ { t: "path", d: "M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517" },
713
+ { t: "path", d: "M6 18a4 4 0 0 1-2-7.464" },
714
+ { t: "path", d: "M6.003 5.125a4 4 0 0 0-2.526 5.77" }
715
+ ],
716
+ // A conversation, e.g. an empty chat.
717
+ message: [
718
+ {
719
+ t: "path",
720
+ d: "M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"
721
+ }
722
+ ],
723
+ // ---- files ----
724
+ // The folder you are in, as distinct from `folder`, a folder you could open.
725
+ "folder-open": [
726
+ {
727
+ t: "path",
728
+ d: "m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2"
729
+ }
730
+ ],
731
+ // Create a folder.
732
+ "folder-plus": [
733
+ { t: "path", d: "M12 10v6" },
734
+ { t: "path", d: "M9 13h6" },
735
+ {
736
+ t: "path",
737
+ d: "M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"
738
+ }
739
+ ],
740
+ // Go to the enclosing folder. Not `arrow-up`, which sorts.
741
+ "folder-up": [
742
+ {
743
+ t: "path",
744
+ d: "M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"
745
+ },
746
+ { t: "path", d: "M12 10v6" },
747
+ { t: "path", d: "m9 13 3-3 3 3" }
748
+ ],
749
+ // Move into a folder. `arrow-right` reads as navigation, not as relocating the item.
750
+ "folder-input": [
751
+ {
752
+ t: "path",
753
+ d: "M2 9V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-1"
754
+ },
755
+ { t: "path", d: "M2 13h10" },
756
+ { t: "path", d: "m9 16 3-3-3-3" }
757
+ ],
758
+ // Plain text and prose documents.
759
+ "file-text": [
760
+ {
761
+ t: "path",
762
+ d: "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"
763
+ },
764
+ { t: "path", d: "M14 2v5a1 1 0 0 0 1 1h5" },
765
+ { t: "path", d: "M10 9H8" },
766
+ { t: "path", d: "M16 13H8" },
767
+ { t: "path", d: "M16 17H8" }
768
+ ],
769
+ // Source code.
770
+ "file-code": [
771
+ {
772
+ t: "path",
773
+ d: "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"
774
+ },
775
+ { t: "path", d: "M14 2v5a1 1 0 0 0 1 1h5" },
776
+ { t: "path", d: "M10 12.5 8 15l2 2.5" },
777
+ { t: "path", d: "m14 12.5 2 2.5-2 2.5" }
778
+ ],
779
+ // An image file, when the picture itself is not shown.
780
+ "file-image": [
781
+ {
782
+ t: "path",
783
+ d: "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"
784
+ },
785
+ { t: "path", d: "M14 2v5a1 1 0 0 0 1 1h5" },
786
+ { t: "circle", cx: 10, cy: 12, r: 2 },
787
+ { t: "path", d: "m20 17-1.296-1.296a2.41 2.41 0 0 0-3.408 0L9 22" }
788
+ ],
789
+ // A video file.
790
+ "file-video": [
791
+ {
792
+ t: "path",
793
+ d: "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"
794
+ },
795
+ { t: "path", d: "M14 2v5a1 1 0 0 0 1 1h5" },
796
+ {
797
+ t: "path",
798
+ d: "M15.033 13.44a.647.647 0 0 1 0 1.12l-4.065 2.352a.645.645 0 0 1-.968-.56v-4.704a.645.645 0 0 1 .967-.56z"
799
+ }
800
+ ],
801
+ // An audio file.
802
+ "file-audio": [
803
+ {
804
+ t: "path",
805
+ d: "M11.65 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v10.35"
806
+ },
807
+ { t: "path", d: "M14 2v5a1 1 0 0 0 1 1h5" },
808
+ { t: "path", d: "M8 20v-7l3 1.474" },
809
+ { t: "circle", cx: 6, cy: 20, r: 2 }
810
+ ],
811
+ // A spreadsheet or CSV.
812
+ "file-sheet": [
813
+ {
814
+ t: "path",
815
+ d: "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"
816
+ },
817
+ { t: "path", d: "M14 2v5a1 1 0 0 0 1 1h5" },
818
+ { t: "path", d: "M8 13h2" },
819
+ { t: "path", d: "M14 13h2" },
820
+ { t: "path", d: "M8 17h2" },
821
+ { t: "path", d: "M14 17h2" }
822
+ ],
823
+ // A slide deck.
824
+ "file-slides": [
825
+ { t: "path", d: "M2 3h20" },
826
+ { t: "path", d: "M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3" },
827
+ { t: "path", d: "m7 21 5-5 5 5" }
828
+ ],
829
+ // A zip or tarball. `archive` is the box you file things away into, not a file.
830
+ "file-archive": [
831
+ {
832
+ t: "path",
833
+ d: "M13.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v11.5"
834
+ },
835
+ { t: "path", d: "M14 2v5a1 1 0 0 0 1 1h5" },
836
+ { t: "path", d: "M8 12v-1" },
837
+ { t: "path", d: "M8 18v-2" },
838
+ { t: "path", d: "M8 7V6" },
839
+ { t: "circle", cx: 8, cy: 20, r: 2 }
840
+ ],
841
+ // The root of a file system.
842
+ "hard-drive": [
843
+ { t: "path", d: "M10 16h.01" },
844
+ {
845
+ t: "path",
846
+ d: "M2.212 11.577a2 2 0 0 0-.212.896V18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5.527a2 2 0 0 0-.212-.896L18.55 5.11A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"
847
+ },
848
+ { t: "path", d: "M21.946 12.013H2.054" },
849
+ { t: "path", d: "M6 16h.01" }
850
+ ],
851
+ // Cut to the clipboard.
852
+ scissors: [
853
+ { t: "circle", cx: 6, cy: 6, r: 3 },
854
+ { t: "path", d: "M8.12 8.12 12 12" },
855
+ { t: "path", d: "M20 4 8.12 15.88" },
856
+ { t: "circle", cx: 6, cy: 18, r: 3 },
857
+ { t: "path", d: "M14.8 14.8 20 20" }
858
+ ],
859
+ // Paste from the clipboard.
860
+ clipboard: [
861
+ { t: "path", d: "M11 14h10" },
862
+ { t: "path", d: "M16 4h2a2 2 0 0 1 2 2v1.344" },
863
+ { t: "path", d: "m17 18 4-4-4-4" },
864
+ { t: "path", d: "M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 1.793-1.113" },
865
+ { t: "rect", x: 8, y: 2, width: 8, height: 4, rx: 1 }
866
+ ],
867
+ // Rename in place. `edit` opens an editor.
868
+ rename: [
869
+ { t: "path", d: "M12 20h-1a2 2 0 0 1-2-2 2 2 0 0 1-2 2H6" },
870
+ { t: "path", d: "M13 8h7a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-7" },
871
+ { t: "path", d: "M5 16H4a2 2 0 0 1-2-2v-4a2 2 0 0 1 2-2h1" },
872
+ { t: "path", d: "M6 4h1a2 2 0 0 1 2 2 2 2 0 0 1 2-2h1" },
873
+ { t: "path", d: "M9 6v12" }
874
+ ],
657
875
  // ---- misc ----
658
876
  sparkle: [
659
877
  {
@@ -668,6 +886,241 @@ var iconData = {
668
886
  { t: "path", d: "M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2" },
669
887
  { t: "path", d: "M6 9V3a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v6" },
670
888
  { t: "rect", x: 6, y: 14, width: 12, height: 8, rx: 1 }
889
+ ],
890
+ // ---- keyboard keys ----
891
+ // Keycap glyphs for `Kbd`. Drawn as icons, not Unicode (⌘ ⇧ ⌥ ↩), because
892
+ // those characters fall back to whatever font has them and come out at mixed
893
+ // weights and sizes side by side.
894
+ "key-command": [
895
+ { t: "path", d: "M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3" }
896
+ ],
897
+ "key-shift": [
898
+ {
899
+ t: "path",
900
+ d: "M9 19a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1v-6a1 1 0 0 1 1-1h3.293a.707.707 0 0 0 .5-1.207l-7.086-7.086a1 1 0 0 0-1.414 0l-7.086 7.086a.707.707 0 0 0 .5 1.207H8a1 1 0 0 1 1 1z"
901
+ }
902
+ ],
903
+ "key-option": [
904
+ { t: "path", d: "M14 3h7" },
905
+ { t: "path", d: "M3 3h5.28a1 1 0 0 1 .948.684l5.544 16.632a1 1 0 0 0 .949.684H21" }
906
+ ],
907
+ "key-control": [{ t: "path", d: "m18 15-6-6-6 6" }],
908
+ "key-enter": [
909
+ { t: "path", d: "M20 4v7a4 4 0 0 1-4 4H4" },
910
+ { t: "path", d: "m9 10-5 5 5 5" }
911
+ ],
912
+ "key-tab": [
913
+ { t: "path", d: "M17 12H3" },
914
+ { t: "path", d: "m11 18 6-6-6-6" },
915
+ { t: "path", d: "M21 5v14" }
916
+ ],
917
+ "key-backspace": [
918
+ {
919
+ t: "path",
920
+ d: "M10 5a2 2 0 0 0-1.344.519l-6.328 5.74a1 1 0 0 0 0 1.481l6.328 5.741A2 2 0 0 0 10 19h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2z"
921
+ },
922
+ { t: "path", d: "m12 9 6 6" },
923
+ { t: "path", d: "m18 9-6 6" }
924
+ ],
925
+ "key-space": [{ t: "path", d: "M22 17v1c0 .5-.5 1-1 1H3c-.5 0-1-.5-1-1v-1" }],
926
+ "key-capslock": [
927
+ {
928
+ t: "path",
929
+ d: "M14 16a1 1 0 0 0 1-1v-2a1 1 0 0 1 1-1h3.293a.707.707 0 0 0 .5-1.207l-6.939-6.939a1.207 1.207 0 0 0-1.708 0l-6.94 6.94a.707.707 0 0 0 .5 1.206H8a1 1 0 0 1 1 1v2a1 1 0 0 0 1 1z"
930
+ },
931
+ { t: "path", d: "M9 20h6" }
932
+ ],
933
+ // ---- developer tools ----
934
+ // A branch. Source-control glyphs for desktop developer tools.
935
+ "git-branch": [
936
+ { t: "path", d: "M15 6a9 9 0 0 0-9 9V3" },
937
+ { t: "circle", cx: 18, cy: 6, r: 3 },
938
+ { t: "circle", cx: 6, cy: 18, r: 3 }
939
+ ],
940
+ "git-commit": [
941
+ { t: "circle", cx: 12, cy: 12, r: 3 },
942
+ { t: "line", x1: 3, y1: 12, x2: 9, y2: 12 },
943
+ { t: "line", x1: 15, y1: 12, x2: 21, y2: 12 }
944
+ ],
945
+ // Two versions side by side; a diff.
946
+ "git-diff": [
947
+ { t: "circle", cx: 18, cy: 18, r: 3 },
948
+ { t: "circle", cx: 6, cy: 6, r: 3 },
949
+ { t: "path", d: "M13 6h3a2 2 0 0 1 2 2v7" },
950
+ { t: "path", d: "M11 18H8a2 2 0 0 1-2-2V9" }
951
+ ],
952
+ "git-fork": [
953
+ { t: "circle", cx: 12, cy: 18, r: 3 },
954
+ { t: "circle", cx: 6, cy: 6, r: 3 },
955
+ { t: "circle", cx: 18, cy: 6, r: 3 },
956
+ { t: "path", d: "M18 9v2c0 .6-.4 1-1 1H7c-.6 0-1-.4-1-1V9" },
957
+ { t: "path", d: "M12 12v3" }
958
+ ],
959
+ "git-merge": [
960
+ { t: "circle", cx: 18, cy: 18, r: 3 },
961
+ { t: "circle", cx: 6, cy: 6, r: 3 },
962
+ { t: "path", d: "M6 21V9a9 9 0 0 0 9 9" }
963
+ ],
964
+ "git-pull-request": [
965
+ { t: "circle", cx: 18, cy: 18, r: 3 },
966
+ { t: "circle", cx: 6, cy: 6, r: 3 },
967
+ { t: "path", d: "M13 6h3a2 2 0 0 1 2 2v7" },
968
+ { t: "line", x1: 6, y1: 9, x2: 6, y2: 21 }
969
+ ],
970
+ terminal: [
971
+ { t: "path", d: "m7 11 2-2-2-2" },
972
+ { t: "path", d: "M11 13h4" },
973
+ { t: "rect", x: 3, y: 3, width: 18, height: 18, rx: 2, ry: 2 }
974
+ ],
975
+ // A dependency or published package. `box` is a container.
976
+ package: [
977
+ {
978
+ t: "path",
979
+ d: "M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z"
980
+ },
981
+ { t: "path", d: "M12 22V12" },
982
+ { t: "polyline", points: "3.29 7 12 12 20.71 7" },
983
+ { t: "path", d: "m7.5 4.27 9 5.15" }
984
+ ],
985
+ // A sandbox or container.
986
+ box: [
987
+ {
988
+ t: "path",
989
+ d: "M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z"
990
+ },
991
+ { t: "path", d: "m3.3 7 8.7 5 8.7-5" },
992
+ { t: "path", d: "M12 22V12" }
993
+ ],
994
+ // Machines linked together; a mesh.
995
+ network: [
996
+ { t: "rect", x: 16, y: 16, width: 6, height: 6, rx: 1 },
997
+ { t: "rect", x: 2, y: 16, width: 6, height: 6, rx: 1 },
998
+ { t: "rect", x: 9, y: 2, width: 6, height: 6, rx: 1 },
999
+ { t: "path", d: "M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3" },
1000
+ { t: "path", d: "M12 12V8" }
1001
+ ],
1002
+ // A person's devices (a desktop and a phone).
1003
+ devices: [
1004
+ { t: "path", d: "M18 8V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h8" },
1005
+ { t: "path", d: "M10 19v-3.96 3.15" },
1006
+ { t: "path", d: "M7 19h5" },
1007
+ { t: "rect", x: 16, y: 12, width: 6, height: 10, rx: 2 }
1008
+ ],
1009
+ // Live activity or health over time.
1010
+ activity: [
1011
+ {
1012
+ t: "path",
1013
+ d: "M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"
1014
+ }
1015
+ ],
1016
+ // Several sparkles: something an agent or model did. `sparkle` is one.
1017
+ sparkles: [
1018
+ {
1019
+ t: "path",
1020
+ d: "M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z"
1021
+ },
1022
+ { t: "path", d: "M20 2v4" },
1023
+ { t: "path", d: "M22 4h-4" },
1024
+ { t: "circle", cx: 4, cy: 20, r: 2 }
1025
+ ],
1026
+ // Show or hide a side panel.
1027
+ "panel-left": [
1028
+ { t: "rect", x: 3, y: 3, width: 18, height: 18, rx: 2 },
1029
+ { t: "path", d: "M9 3v18" }
1030
+ ],
1031
+ inbox: [
1032
+ { t: "polyline", points: "22 12 16 12 14 15 10 15 8 12 2 12" },
1033
+ {
1034
+ t: "path",
1035
+ d: "M5.45 5.11 2 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.11z"
1036
+ }
1037
+ ],
1038
+ // A chat or a comment thread.
1039
+ "message-square": [
1040
+ {
1041
+ t: "path",
1042
+ d: "M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"
1043
+ }
1044
+ ],
1045
+ mic: [
1046
+ { t: "path", d: "M12 19v3" },
1047
+ { t: "path", d: "M19 10v2a7 7 0 0 1-14 0v-2" },
1048
+ { t: "rect", x: 9, y: 2, width: 6, height: 13, rx: 3 }
1049
+ ],
1050
+ video: [
1051
+ { t: "path", d: "m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5" },
1052
+ { t: "rect", x: 2, y: 6, width: 14, height: 12, rx: 2 }
1053
+ ],
1054
+ // A mention.
1055
+ "at-sign": [
1056
+ { t: "circle", cx: 12, cy: 12, r: 4 },
1057
+ { t: "path", d: "M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8" }
1058
+ ],
1059
+ flag: [
1060
+ {
1061
+ t: "path",
1062
+ d: "M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528"
1063
+ }
1064
+ ],
1065
+ list: [
1066
+ { t: "path", d: "M3 5h.01" },
1067
+ { t: "path", d: "M3 12h.01" },
1068
+ { t: "path", d: "M3 19h.01" },
1069
+ { t: "path", d: "M8 5h13" },
1070
+ { t: "path", d: "M8 12h13" },
1071
+ { t: "path", d: "M8 19h13" }
1072
+ ],
1073
+ table: [
1074
+ { t: "path", d: "M12 3v18" },
1075
+ { t: "rect", x: 3, y: 3, width: 18, height: 18, rx: 2 },
1076
+ { t: "path", d: "M3 9h18" },
1077
+ { t: "path", d: "M3 15h18" }
1078
+ ],
1079
+ // Stop.
1080
+ square: [{ t: "rect", x: 3, y: 3, width: 18, height: 18, rx: 2 }],
1081
+ dot: [{ t: "circle", cx: 12, cy: 12, r: 1 }],
1082
+ // An open item (an issue).
1083
+ "circle-dot": [
1084
+ { t: "circle", cx: 12, cy: 12, r: 10 },
1085
+ { t: "circle", cx: 12, cy: 12, r: 1 }
1086
+ ],
1087
+ // Failed or closed.
1088
+ "x-circle": [
1089
+ { t: "circle", cx: 12, cy: 12, r: 10 },
1090
+ { t: "path", d: "m15 9-6 6" },
1091
+ { t: "path", d: "m9 9 6 6" }
1092
+ ],
1093
+ "help-circle": [
1094
+ { t: "circle", cx: 12, cy: 12, r: 10 },
1095
+ { t: "path", d: "M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3" },
1096
+ { t: "path", d: "M12 17h.01" }
1097
+ ],
1098
+ // Undo or revert.
1099
+ "rotate-ccw": [
1100
+ { t: "path", d: "M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8" },
1101
+ { t: "path", d: "M3 3v5h5" }
1102
+ ],
1103
+ minimize: [
1104
+ { t: "path", d: "m14 10 7-7" },
1105
+ { t: "path", d: "M20 10h-6V4" },
1106
+ { t: "path", d: "m3 21 7-7" },
1107
+ { t: "path", d: "M4 14h6v6" }
1108
+ ],
1109
+ // Sort order.
1110
+ "arrow-down-up": [
1111
+ { t: "path", d: "m3 16 4 4 4-4" },
1112
+ { t: "path", d: "M7 20V4" },
1113
+ { t: "path", d: "m21 8-4-4-4 4" },
1114
+ { t: "path", d: "M17 4v16" }
1115
+ ],
1116
+ "arrow-up-right": [
1117
+ { t: "path", d: "M7 7h10v10" },
1118
+ { t: "path", d: "M7 17 17 7" }
1119
+ ],
1120
+ // A reply or a nested item.
1121
+ "corner-down-right": [
1122
+ { t: "path", d: "m15 10 5 5-5 5" },
1123
+ { t: "path", d: "M4 4v7a4 4 0 0 0 4 4h12" }
671
1124
  ]
672
1125
  };
673
1126
 
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@btndprojects/loam-icons",
3
- "version": "0.1.1",
3
+ "version": "0.2.1",
4
4
  "description": "Loam icon set — framework-agnostic SVG primitive data shared by web and native renderers.",
5
- "license": "MIT",
5
+ "license": "MIT AND ISC",
6
6
  "author": "Nuszpl Botond",
7
7
  "homepage": "https://loam.btndprojects.com",
8
8
  "repository": {
@@ -35,8 +35,8 @@
35
35
  "tsup": "^8.3.5",
36
36
  "typescript": "^5.6.3",
37
37
  "vitest": "^2.1.8",
38
- "@loam/eslint-config": "0.0.0",
39
- "@loam/tsconfig": "0.0.0"
38
+ "@loam/tsconfig": "0.0.0",
39
+ "@loam/eslint-config": "0.0.0"
40
40
  },
41
41
  "scripts": {
42
42
  "build": "tsup",