@sciexpr/presets 0.1.1 → 0.1.2

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/dist/index.cjs CHANGED
@@ -25,6 +25,7 @@ __export(index_exports, {
25
25
  ALL_GREEK: () => ALL_GREEK,
26
26
  ALL_MATH_TEMPLATES: () => ALL_MATH_TEMPLATES,
27
27
  CALCULUS_TEMPLATES: () => CALCULUS_TEMPLATES,
28
+ CHEM_PALETTE_CATEGORIES: () => CHEM_PALETTE_CATEGORIES,
28
29
  COMPOUND_TEMPLATES: () => COMPOUND_TEMPLATES,
29
30
  ELECTROCHEM_TEMPLATES: () => ELECTROCHEM_TEMPLATES,
30
31
  ELEMENT_TEMPLATES: () => ELEMENT_TEMPLATES,
@@ -330,13 +331,48 @@ var STATS_TEMPLATES = [
330
331
  }
331
332
  ];
332
333
  var PHYSICS_TEMPLATES = [
334
+ // --------------------------------------------------------------------------
335
+ // 力学 (Mechanics)
336
+ // --------------------------------------------------------------------------
333
337
  {
334
- id: "einstein-emc2",
335
- name: "\u8D28\u80FD\u65B9\u7A0B",
336
- latex: "E = mc^{2}",
338
+ id: "velocity-avg",
339
+ name: "\u5E73\u5747\u901F\u5EA6",
340
+ latex: "\\bar{v} = \\frac{\\Delta x}{\\Delta t}",
337
341
  category: "physics",
338
- description: "\u7231\u56E0\u65AF\u5766\u8D28\u80FD\u65B9\u7A0B",
339
- tags: ["einstein", "energy", "mass"]
342
+ description: "\u5E73\u5747\u901F\u5EA6\u5B9A\u4E49",
343
+ tags: ["kinematics", "velocity", "mechanics"]
344
+ },
345
+ {
346
+ id: "acceleration-def",
347
+ name: "\u52A0\u901F\u5EA6\u5B9A\u4E49",
348
+ latex: "\\vec{a} = \\frac{\\Delta \\vec{v}}{\\Delta t}",
349
+ category: "physics",
350
+ description: "\u52A0\u901F\u5EA6\u5B9A\u4E49",
351
+ tags: ["kinematics", "acceleration", "mechanics"]
352
+ },
353
+ {
354
+ id: "kinematic-vt",
355
+ name: "\u5300\u53D8\u901F\u901F\u5EA6\u516C\u5F0F",
356
+ latex: "v = v_0 + at",
357
+ category: "physics",
358
+ description: "\u5300\u53D8\u901F\u76F4\u7EBF\u8FD0\u52A8\u901F\u5EA6\u516C\u5F0F",
359
+ tags: ["kinematics", "mechanics"]
360
+ },
361
+ {
362
+ id: "kinematic-s",
363
+ name: "\u5300\u53D8\u901F\u4F4D\u79FB\u516C\u5F0F",
364
+ latex: "s = v_0 t + \\frac{1}{2} a t^{2}",
365
+ category: "physics",
366
+ description: "\u5300\u53D8\u901F\u76F4\u7EBF\u8FD0\u52A8\u4F4D\u79FB\u516C\u5F0F",
367
+ tags: ["kinematics", "mechanics"]
368
+ },
369
+ {
370
+ id: "kinematic-v2",
371
+ name: "\u901F\u5EA6-\u4F4D\u79FB\u5173\u7CFB",
372
+ latex: "v^{2} - v_0^{2} = 2 a s",
373
+ category: "physics",
374
+ description: "\u5300\u53D8\u901F\u76F4\u7EBF\u8FD0\u52A8\u901F\u5EA6-\u4F4D\u79FB\u5173\u7CFB",
375
+ tags: ["kinematics", "mechanics"]
340
376
  },
341
377
  {
342
378
  id: "newton-2nd",
@@ -344,8 +380,316 @@ var PHYSICS_TEMPLATES = [
344
380
  latex: "\\vec{F} = m\\vec{a}",
345
381
  category: "physics",
346
382
  description: "\u725B\u987F\u7B2C\u4E8C\u5B9A\u5F8B",
347
- tags: ["newton", "force", "acceleration"]
383
+ tags: ["newton", "force", "acceleration", "mechanics"]
384
+ },
385
+ {
386
+ id: "newton-3rd",
387
+ name: "\u725B\u987F\u7B2C\u4E09\u5B9A\u5F8B",
388
+ latex: "\\vec{F}_{AB} = -\\vec{F}_{BA}",
389
+ category: "physics",
390
+ description: "\u725B\u987F\u7B2C\u4E09\u5B9A\u5F8B\uFF08\u4F5C\u7528\u529B\u4E0E\u53CD\u4F5C\u7528\u529B\uFF09",
391
+ tags: ["newton", "mechanics"]
392
+ },
393
+ {
394
+ id: "momentum-def",
395
+ name: "\u52A8\u91CF\u5B9A\u4E49",
396
+ latex: "\\vec{p} = m\\vec{v}",
397
+ category: "physics",
398
+ description: "\u52A8\u91CF\u5B9A\u4E49",
399
+ tags: ["momentum", "mechanics"]
400
+ },
401
+ {
402
+ id: "momentum-conservation",
403
+ name: "\u52A8\u91CF\u5B88\u6052",
404
+ latex: "\\vec{p}_1 + \\vec{p}_2 = \\vec{p}_1' + \\vec{p}_2'",
405
+ category: "physics",
406
+ description: "\u52A8\u91CF\u5B88\u6052\u5B9A\u5F8B",
407
+ tags: ["momentum", "conservation", "mechanics"]
408
+ },
409
+ {
410
+ id: "impulse",
411
+ name: "\u51B2\u91CF\u5B9A\u7406",
412
+ latex: "\\vec{F}\\Delta t = \\Delta \\vec{p}",
413
+ category: "physics",
414
+ description: "\u51B2\u91CF\u5B9A\u7406\uFF08\u52A8\u91CF\u5B9A\u7406\uFF09",
415
+ tags: ["impulse", "momentum", "mechanics"]
416
+ },
417
+ {
418
+ id: "kinetic-energy",
419
+ name: "\u52A8\u80FD\u5B9A\u7406",
420
+ latex: "W = \\Delta E_k = \\frac{1}{2} m v^{2} - \\frac{1}{2} m v_0^{2}",
421
+ category: "physics",
422
+ description: "\u52A8\u80FD\u5B9A\u7406",
423
+ tags: ["energy", "kinetic", "mechanics"]
424
+ },
425
+ {
426
+ id: "potential-spring",
427
+ name: "\u5F39\u6027\u52BF\u80FD",
428
+ latex: "E_p = \\frac{1}{2} k x^{2}",
429
+ category: "physics",
430
+ description: "\u5F39\u6027\u52BF\u80FD\uFF08\u80E1\u514B\u5B9A\u5F8B\u52BF\u80FD\uFF09",
431
+ tags: ["energy", "spring", "mechanics"]
432
+ },
433
+ {
434
+ id: "potential-gravity",
435
+ name: "\u91CD\u529B\u52BF\u80FD",
436
+ latex: "E_p = mgh",
437
+ category: "physics",
438
+ description: "\u91CD\u529B\u52BF\u80FD",
439
+ tags: ["energy", "gravity", "mechanics"]
440
+ },
441
+ {
442
+ id: "mechanical-energy",
443
+ name: "\u673A\u68B0\u80FD\u5B88\u6052",
444
+ latex: "E_k + E_p = \\text{const}",
445
+ category: "physics",
446
+ description: "\u673A\u68B0\u80FD\u5B88\u6052\u5B9A\u5F8B",
447
+ tags: ["energy", "conservation", "mechanics"]
448
+ },
449
+ {
450
+ id: "work-def",
451
+ name: "\u529F\u7684\u5B9A\u4E49",
452
+ latex: "W = \\vec{F} \\cdot \\vec{s} = F s \\cos\\theta",
453
+ category: "physics",
454
+ description: "\u6052\u529B\u505A\u529F",
455
+ tags: ["work", "energy", "mechanics"]
456
+ },
457
+ {
458
+ id: "power-def",
459
+ name: "\u529F\u7387\u5B9A\u4E49",
460
+ latex: "P = \\frac{W}{t} = \\vec{F} \\cdot \\vec{v}",
461
+ category: "physics",
462
+ description: "\u5E73\u5747\u529F\u7387\u4E0E\u77AC\u65F6\u529F\u7387",
463
+ tags: ["power", "mechanics"]
464
+ },
465
+ {
466
+ id: "projectile-motion",
467
+ name: "\u629B\u4F53\u8FD0\u52A8\u65B9\u7A0B",
468
+ latex: "\\begin{cases} x = v_0 t \\cos\\theta \\\\ y = v_0 t \\sin\\theta - \\frac{1}{2} g t^{2} \\end{cases}",
469
+ category: "physics",
470
+ description: "\u629B\u4F53\u8FD0\u52A8\u53C2\u6570\u65B9\u7A0B",
471
+ tags: ["projectile", "kinematics", "mechanics"]
472
+ },
473
+ {
474
+ id: "shm",
475
+ name: "\u7B80\u8C10\u632F\u52A8",
476
+ latex: "x(t) = A \\cos(\\omega t + \\phi_0)",
477
+ category: "physics",
478
+ description: "\u7B80\u8C10\u632F\u52A8\u4F4D\u79FB\u65B9\u7A0B",
479
+ tags: ["shm", "oscillation", "mechanics"]
480
+ },
481
+ {
482
+ id: "shm-energy",
483
+ name: "\u7B80\u8C10\u632F\u52A8\u80FD\u91CF",
484
+ latex: "E = \\frac{1}{2} k A^{2}",
485
+ category: "physics",
486
+ description: "\u7B80\u8C10\u632F\u52A8\u603B\u80FD\u91CF",
487
+ tags: ["shm", "energy", "mechanics"]
488
+ },
489
+ // --------------------------------------------------------------------------
490
+ // 旋转运动 (Rotational Motion)
491
+ // --------------------------------------------------------------------------
492
+ {
493
+ id: "centripetal-force",
494
+ name: "\u5411\u5FC3\u529B",
495
+ latex: "F_c = m \\frac{v^{2}}{r} = m \\omega^{2} r",
496
+ category: "physics",
497
+ description: "\u5411\u5FC3\u529B\u516C\u5F0F",
498
+ tags: ["rotation", "centripetal", "mechanics"]
499
+ },
500
+ {
501
+ id: "angular-momentum",
502
+ name: "\u89D2\u52A8\u91CF",
503
+ latex: "\\vec{L} = \\vec{r} \\times \\vec{p} = I \\vec{\\omega}",
504
+ category: "physics",
505
+ description: "\u89D2\u52A8\u91CF\u5B9A\u4E49",
506
+ tags: ["rotation", "angular-momentum", "mechanics"]
507
+ },
508
+ {
509
+ id: "torque-def",
510
+ name: "\u529B\u77E9\u5B9A\u4E49",
511
+ latex: "\\vec{\\tau} = \\vec{r} \\times \\vec{F}",
512
+ category: "physics",
513
+ description: "\u529B\u77E9\u5B9A\u4E49",
514
+ tags: ["rotation", "torque", "mechanics"]
515
+ },
516
+ {
517
+ id: "torque-angular",
518
+ name: "\u8F6C\u52A8\u5B9A\u5F8B",
519
+ latex: "\\vec{\\tau} = I \\vec{\\alpha}",
520
+ category: "physics",
521
+ description: "\u521A\u4F53\u8F6C\u52A8\u5B9A\u5F8B",
522
+ tags: ["rotation", "torque", "mechanics"]
523
+ },
524
+ {
525
+ id: "rotational-ke",
526
+ name: "\u8F6C\u52A8\u52A8\u80FD",
527
+ latex: "E_k = \\frac{1}{2} I \\omega^{2}",
528
+ category: "physics",
529
+ description: "\u521A\u4F53\u8F6C\u52A8\u52A8\u80FD",
530
+ tags: ["rotation", "energy", "mechanics"]
531
+ },
532
+ // --------------------------------------------------------------------------
533
+ // 电磁学 (Electromagnetism)
534
+ // --------------------------------------------------------------------------
535
+ {
536
+ id: "coulomb-law",
537
+ name: "\u5E93\u4ED1\u5B9A\u5F8B",
538
+ latex: "F = k_e \\frac{q_1 q_2}{r^{2}}",
539
+ category: "physics",
540
+ description: "\u5E93\u4ED1\u5B9A\u5F8B\uFF08\u9759\u7535\u529B\uFF09",
541
+ tags: ["electrostatics", "electromagnetism"]
542
+ },
543
+ {
544
+ id: "electric-field",
545
+ name: "\u7535\u573A\u5F3A\u5EA6",
546
+ latex: "\\vec{E} = \\frac{\\vec{F}}{q}",
547
+ category: "physics",
548
+ description: "\u7535\u573A\u5F3A\u5EA6\u5B9A\u4E49",
549
+ tags: ["electrostatics", "electromagnetism"]
550
+ },
551
+ {
552
+ id: "gauss-law",
553
+ name: "\u9AD8\u65AF\u5B9A\u5F8B",
554
+ latex: "\\oint \\vec{E} \\cdot d\\vec{A} = \\frac{Q_{\\text{enc}}}{\\varepsilon_0}",
555
+ category: "physics",
556
+ description: "\u9AD8\u65AF\u5B9A\u5F8B\uFF08\u7535\u573A\uFF09",
557
+ tags: ["maxwell", "electrostatics", "electromagnetism"]
558
+ },
559
+ {
560
+ id: "magnetic-flux",
561
+ name: "\u78C1\u901A\u91CF",
562
+ latex: "\\Phi_B = \\int \\vec{B} \\cdot d\\vec{A}",
563
+ category: "physics",
564
+ description: "\u78C1\u901A\u91CF\u5B9A\u4E49",
565
+ tags: ["magnetism", "electromagnetism"]
566
+ },
567
+ {
568
+ id: "maxwell-faraday",
569
+ name: "\u6CD5\u62C9\u7B2C\u7535\u78C1\u611F\u5E94",
570
+ latex: "\\mathcal{E} = -\\frac{d\\Phi_B}{dt}",
571
+ category: "physics",
572
+ description: "\u6CD5\u62C9\u7B2C\u7535\u78C1\u611F\u5E94\u5B9A\u5F8B",
573
+ tags: ["maxwell", "electromagnetism", "induction"]
574
+ },
575
+ {
576
+ id: "ampere-law",
577
+ name: "\u5B89\u57F9\u73AF\u8DEF\u5B9A\u7406",
578
+ latex: "\\oint \\vec{B} \\cdot d\\vec{l} = \\mu_0 I_{\\text{enc}}",
579
+ category: "physics",
580
+ description: "\u5B89\u57F9\u73AF\u8DEF\u5B9A\u7406",
581
+ tags: ["maxwell", "magnetism", "electromagnetism"]
582
+ },
583
+ {
584
+ id: "lorentz-force",
585
+ name: "\u6D1B\u4F26\u5179\u529B",
586
+ latex: "\\vec{F} = q(\\vec{E} + \\vec{v} \\times \\vec{B})",
587
+ category: "physics",
588
+ description: "\u6D1B\u4F26\u5179\u529B\u516C\u5F0F",
589
+ tags: ["electromagnetism", "lorentz"]
590
+ },
591
+ {
592
+ id: "ohm-law",
593
+ name: "\u6B27\u59C6\u5B9A\u5F8B",
594
+ latex: "V = I R",
595
+ category: "physics",
596
+ description: "\u6B27\u59C6\u5B9A\u5F8B",
597
+ tags: ["circuit", "electromagnetism"]
598
+ },
599
+ {
600
+ id: "joule-heating",
601
+ name: "\u7126\u8033\u5B9A\u5F8B",
602
+ latex: "P = I^{2} R",
603
+ category: "physics",
604
+ description: "\u7126\u8033\u5B9A\u5F8B\uFF08\u7535\u963B\u53D1\u70ED\u529F\u7387\uFF09",
605
+ tags: ["circuit", "electromagnetism"]
606
+ },
607
+ {
608
+ id: "capacitor-energy",
609
+ name: "\u7535\u5BB9\u5668\u80FD\u91CF",
610
+ latex: "E = \\frac{1}{2} C V^{2} = \\frac{Q^{2}}{2C}",
611
+ category: "physics",
612
+ description: "\u7535\u5BB9\u5668\u50A8\u5B58\u7684\u7535\u80FD",
613
+ tags: ["circuit", "electromagnetism"]
614
+ },
615
+ {
616
+ id: "inductor-energy",
617
+ name: "\u7535\u611F\u80FD\u91CF",
618
+ latex: "E = \\frac{1}{2} L I^{2}",
619
+ category: "physics",
620
+ description: "\u7535\u611F\u50A8\u5B58\u7684\u78C1\u80FD",
621
+ tags: ["circuit", "electromagnetism"]
622
+ },
623
+ {
624
+ id: "capacitance",
625
+ name: "\u7535\u5BB9\u5B9A\u4E49",
626
+ latex: "C = \\frac{Q}{V}",
627
+ category: "physics",
628
+ description: "\u7535\u5BB9\u5B9A\u4E49",
629
+ tags: ["circuit", "electromagnetism"]
630
+ },
631
+ // --------------------------------------------------------------------------
632
+ // 热力学 (Thermodynamics)
633
+ // --------------------------------------------------------------------------
634
+ {
635
+ id: "ideal-gas-law",
636
+ name: "\u7406\u60F3\u6C14\u4F53\u72B6\u6001\u65B9\u7A0B",
637
+ latex: "PV = nRT",
638
+ category: "physics",
639
+ description: "\u7406\u60F3\u6C14\u4F53\u72B6\u6001\u65B9\u7A0B",
640
+ tags: ["thermodynamics", "gas"]
641
+ },
642
+ {
643
+ id: "first-law-thermo",
644
+ name: "\u70ED\u529B\u5B66\u7B2C\u4E00\u5B9A\u5F8B",
645
+ latex: "\\Delta U = Q - W",
646
+ category: "physics",
647
+ description: "\u70ED\u529B\u5B66\u7B2C\u4E00\u5B9A\u5F8B\uFF08\u5185\u80FD\u53D8\u5316 = \u5438\u70ED - \u5BF9\u5916\u505A\u529F\uFF09",
648
+ tags: ["thermodynamics", "energy"]
649
+ },
650
+ {
651
+ id: "entropy-def",
652
+ name: "\u71B5\u53D8\u5B9A\u4E49",
653
+ latex: "\\Delta S = \\int \\frac{dQ_{\\text{rev}}}{T}",
654
+ category: "physics",
655
+ description: "\u71B5\u53D8\u5B9A\u4E49\uFF08\u53EF\u9006\u8FC7\u7A0B\uFF09",
656
+ tags: ["thermodynamics", "entropy"]
657
+ },
658
+ {
659
+ id: "carnot-efficiency",
660
+ name: "\u5361\u8BFA\u6548\u7387",
661
+ latex: "\\eta = 1 - \\frac{T_C}{T_H}",
662
+ category: "physics",
663
+ description: "\u5361\u8BFA\u70ED\u673A\u6548\u7387",
664
+ tags: ["thermodynamics", "carnot"]
665
+ },
666
+ {
667
+ id: "thermal-expansion",
668
+ name: "\u70ED\u81A8\u80C0",
669
+ latex: "\\Delta L = \\alpha L_0 \\Delta T",
670
+ category: "physics",
671
+ description: "\u7EBF\u81A8\u80C0\u516C\u5F0F",
672
+ tags: ["thermodynamics", "expansion"]
348
673
  },
674
+ {
675
+ id: "heat-capacity",
676
+ name: "\u70ED\u5BB9\u91CF",
677
+ latex: "Q = mc\\Delta T",
678
+ category: "physics",
679
+ description: "\u70ED\u5BB9\u91CF\u4E0E\u6BD4\u70ED\u5BB9",
680
+ tags: ["thermodynamics", "heat"]
681
+ },
682
+ {
683
+ id: "stefan-boltzmann",
684
+ name: "\u65AF\u7279\u85E9-\u73BB\u5C14\u5179\u66FC\u5B9A\u5F8B",
685
+ latex: "P = \\sigma A T^{4}",
686
+ category: "physics",
687
+ description: "\u9ED1\u4F53\u8F90\u5C04\u603B\u529F\u7387",
688
+ tags: ["thermodynamics", "radiation"]
689
+ },
690
+ // --------------------------------------------------------------------------
691
+ // 量子力学 (Quantum Mechanics)
692
+ // --------------------------------------------------------------------------
349
693
  {
350
694
  id: "schrodinger",
351
695
  name: "\u859B\u5B9A\u8C14\u65B9\u7A0B",
@@ -355,20 +699,299 @@ var PHYSICS_TEMPLATES = [
355
699
  tags: ["quantum", "schrodinger"]
356
700
  },
357
701
  {
358
- id: "maxwell-faraday",
359
- name: "\u6CD5\u62C9\u7B2C\u5B9A\u5F8B",
360
- latex: "\\nabla \\times \\vec{E} = -\\frac{\\partial\\vec{B}}{\\partial t}",
702
+ id: "schrodinger-tise",
703
+ name: "\u5B9A\u6001\u859B\u5B9A\u8C14\u65B9\u7A0B",
704
+ latex: "\\hat{H} \\psi = E \\psi",
705
+ category: "physics",
706
+ description: "\u5B9A\u6001\uFF08\u4E0D\u542B\u65F6\uFF09\u859B\u5B9A\u8C14\u65B9\u7A0B",
707
+ tags: ["quantum", "schrodinger"]
708
+ },
709
+ {
710
+ id: "uncertainty-principle",
711
+ name: "\u4E0D\u786E\u5B9A\u6027\u539F\u7406",
712
+ latex: "\\Delta x \\cdot \\Delta p \\geq \\frac{\\hbar}{2}",
713
+ category: "physics",
714
+ description: "\u6D77\u68EE\u5821\u4E0D\u786E\u5B9A\u6027\u539F\u7406",
715
+ tags: ["quantum", "heisenberg"]
716
+ },
717
+ {
718
+ id: "debroglie",
719
+ name: "\u5FB7\u5E03\u7F57\u610F\u6CE2\u957F",
720
+ latex: "\\lambda = \\frac{h}{p} = \\frac{h}{mv}",
361
721
  category: "physics",
362
- description: "\u9EA6\u514B\u65AF\u97E6-\u6CD5\u62C9\u7B2C\u65B9\u7A0B",
363
- tags: ["maxwell", "electromagnetism"]
722
+ description: "\u5FB7\u5E03\u7F57\u610F\u7269\u8D28\u6CE2",
723
+ tags: ["quantum", "wave-particle"]
364
724
  },
725
+ {
726
+ id: "photoelectric",
727
+ name: "\u5149\u7535\u6548\u5E94",
728
+ latex: "E_k = h\\nu - W_0",
729
+ category: "physics",
730
+ description: "\u5149\u7535\u6548\u5E94\u65B9\u7A0B\uFF08\u7231\u56E0\u65AF\u5766\uFF09",
731
+ tags: ["quantum", "photon", "photoelectric"]
732
+ },
733
+ {
734
+ id: "commutator-xp",
735
+ name: "\u4F4D\u7F6E-\u52A8\u91CF\u5BF9\u6613\u5173\u7CFB",
736
+ latex: "[\\hat{x}, \\hat{p}] = i\\hbar",
737
+ category: "physics",
738
+ description: "\u6B63\u5219\u5BF9\u6613\u5173\u7CFB",
739
+ tags: ["quantum", "commutator"]
740
+ },
741
+ {
742
+ id: "bohr-model",
743
+ name: "\u73BB\u5C14\u6C22\u539F\u5B50\u6A21\u578B",
744
+ latex: "E_n = -\\frac{13.6 \\ \\text{eV}}{n^{2}}",
745
+ category: "physics",
746
+ description: "\u73BB\u5C14\u6C22\u539F\u5B50\u80FD\u7EA7",
747
+ tags: ["quantum", "atom", "bohr"]
748
+ },
749
+ {
750
+ id: "pauli-exclusion",
751
+ name: "\u6CE1\u5229\u4E0D\u76F8\u5BB9\u539F\u7406",
752
+ latex: "\\Psi(1,2) = -\\Psi(2,1)",
753
+ category: "physics",
754
+ description: "\u6CE1\u5229\u4E0D\u76F8\u5BB9\u539F\u7406\uFF08\u8D39\u7C73\u5B50\u53CD\u5BF9\u79F0\u6CE2\u51FD\u6570\uFF09",
755
+ tags: ["quantum", "pauli"]
756
+ },
757
+ {
758
+ id: "harmonic-oscillator",
759
+ name: "\u91CF\u5B50\u8C10\u632F\u5B50",
760
+ latex: "E_n = \\hbar \\omega \\left(n + \\frac{1}{2}\\right)",
761
+ category: "physics",
762
+ description: "\u4E00\u7EF4\u91CF\u5B50\u8C10\u632F\u5B50\u80FD\u7EA7",
763
+ tags: ["quantum", "oscillator"]
764
+ },
765
+ {
766
+ id: "potential-well",
767
+ name: "\u65E0\u9650\u6DF1\u52BF\u9631",
768
+ latex: "E_n = \\frac{n^{2} \\pi^{2} \\hbar^{2}}{2 m L^{2}}",
769
+ category: "physics",
770
+ description: "\u4E00\u7EF4\u65E0\u9650\u6DF1\u65B9\u52BF\u9631\u80FD\u7EA7",
771
+ tags: ["quantum", "potential-well"]
772
+ },
773
+ // --------------------------------------------------------------------------
774
+ // 相对论 (Relativity)
775
+ // --------------------------------------------------------------------------
776
+ {
777
+ id: "einstein-emc2",
778
+ name: "\u8D28\u80FD\u65B9\u7A0B",
779
+ latex: "E = mc^{2}",
780
+ category: "physics",
781
+ description: "\u7231\u56E0\u65AF\u5766\u8D28\u80FD\u65B9\u7A0B",
782
+ tags: ["relativity", "einstein", "energy", "mass"]
783
+ },
784
+ {
785
+ id: "lorentz-transform",
786
+ name: "\u6D1B\u4F26\u5179\u53D8\u6362",
787
+ latex: "x' = \\gamma(x - vt), \\; t' = \\gamma\\left(t - \\frac{vx}{c^{2}}\\right)",
788
+ category: "physics",
789
+ description: "\u6D1B\u4F26\u5179\u5750\u6807\u53D8\u6362",
790
+ tags: ["relativity", "lorentz"]
791
+ },
792
+ {
793
+ id: "time-dilation",
794
+ name: "\u65F6\u95F4\u81A8\u80C0",
795
+ latex: "\\Delta t = \\frac{\\Delta t_0}{\\sqrt{1 - v^{2}/c^{2}}}",
796
+ category: "physics",
797
+ description: "\u76F8\u5BF9\u8BBA\u65F6\u95F4\u81A8\u80C0",
798
+ tags: ["relativity", "time"]
799
+ },
800
+ {
801
+ id: "length-contraction",
802
+ name: "\u957F\u5EA6\u6536\u7F29",
803
+ latex: "L = L_0 \\sqrt{1 - \\frac{v^{2}}{c^{2}}}",
804
+ category: "physics",
805
+ description: "\u76F8\u5BF9\u8BBA\u957F\u5EA6\u6536\u7F29",
806
+ tags: ["relativity", "length"]
807
+ },
808
+ {
809
+ id: "energy-momentum",
810
+ name: "\u80FD\u91CF-\u52A8\u91CF\u5173\u7CFB",
811
+ latex: "E^{2} = (pc)^{2} + (mc^{2})^{2}",
812
+ category: "physics",
813
+ description: "\u76F8\u5BF9\u8BBA\u80FD\u91CF-\u52A8\u91CF\u5173\u7CFB",
814
+ tags: ["relativity", "energy", "momentum"]
815
+ },
816
+ {
817
+ id: "velocity-addition",
818
+ name: "\u76F8\u5BF9\u8BBA\u901F\u5EA6\u53E0\u52A0",
819
+ latex: "u = \\frac{u' + v}{1 + \\frac{u' v}{c^{2}}}",
820
+ category: "physics",
821
+ description: "\u76F8\u5BF9\u8BBA\u901F\u5EA6\u53E0\u52A0\u516C\u5F0F",
822
+ tags: ["relativity", "velocity"]
823
+ },
824
+ {
825
+ id: "lorentz-factor",
826
+ name: "\u6D1B\u4F26\u5179\u56E0\u5B50",
827
+ latex: "\\gamma = \\frac{1}{\\sqrt{1 - v^{2}/c^{2}}}",
828
+ category: "physics",
829
+ description: "\u6D1B\u4F26\u5179\u56E0\u5B50 \u03B3",
830
+ tags: ["relativity", "lorentz"]
831
+ },
832
+ // --------------------------------------------------------------------------
833
+ // 万有引力与天体物理 (Gravitation & Astrophysics)
834
+ // --------------------------------------------------------------------------
365
835
  {
366
836
  id: "gravitation",
367
- name: "\u4E07\u6709\u5F15\u529B",
837
+ name: "\u4E07\u6709\u5F15\u529B\u5B9A\u5F8B",
368
838
  latex: "F = G \\frac{m_1 m_2}{r^{2}}",
369
839
  category: "physics",
370
840
  description: "\u725B\u987F\u4E07\u6709\u5F15\u529B\u5B9A\u5F8B",
371
- tags: ["newton", "gravitation"]
841
+ tags: ["gravitation", "newton", "mechanics"]
842
+ },
843
+ {
844
+ id: "kepler-3rd",
845
+ name: "\u5F00\u666E\u52D2\u7B2C\u4E09\u5B9A\u5F8B",
846
+ latex: "\\frac{T^{2}}{a^{3}} = \\frac{4\\pi^{2}}{GM}",
847
+ category: "physics",
848
+ description: "\u5F00\u666E\u52D2\u7B2C\u4E09\u5B9A\u5F8B",
849
+ tags: ["gravitation", "kepler", "orbit"]
850
+ },
851
+ {
852
+ id: "escape-velocity",
853
+ name: "\u9003\u9038\u901F\u5EA6",
854
+ latex: "v_{\\text{esc}} = \\sqrt{\\frac{2GM}{R}}",
855
+ category: "physics",
856
+ description: "\u5929\u4F53\u9003\u9038\u901F\u5EA6",
857
+ tags: ["gravitation", "escape"]
858
+ },
859
+ {
860
+ id: "orbital-velocity",
861
+ name: "\u8F68\u9053\u901F\u5EA6",
862
+ latex: "v = \\sqrt{\\frac{GM}{r}}",
863
+ category: "physics",
864
+ description: "\u5706\u8F68\u9053\u73AF\u7ED5\u901F\u5EA6",
865
+ tags: ["gravitation", "orbit"]
866
+ },
867
+ // --------------------------------------------------------------------------
868
+ // 光学 (Optics)
869
+ // --------------------------------------------------------------------------
870
+ {
871
+ id: "snell-law",
872
+ name: "\u65AF\u6D85\u5C14\u6298\u5C04\u5B9A\u5F8B",
873
+ latex: "n_1 \\sin\\theta_1 = n_2 \\sin\\theta_2",
874
+ category: "physics",
875
+ description: "\u65AF\u6D85\u5C14\u6298\u5C04\u5B9A\u5F8B",
876
+ tags: ["optics", "refraction"]
877
+ },
878
+ {
879
+ id: "lens-equation",
880
+ name: "\u900F\u955C\u516C\u5F0F",
881
+ latex: "\\frac{1}{f} = \\frac{1}{d_o} + \\frac{1}{d_i}",
882
+ category: "physics",
883
+ description: "\u8584\u900F\u955C\u65B9\u7A0B",
884
+ tags: ["optics", "lens"]
885
+ },
886
+ {
887
+ id: "young-double-slit",
888
+ name: "\u6768\u6C0F\u53CC\u7F1D\u5E72\u6D89",
889
+ latex: "d \\sin\\theta = m \\lambda",
890
+ category: "physics",
891
+ description: "\u6768\u6C0F\u53CC\u7F1D\u5E72\u6D89\uFF08\u660E\u7EB9\u6761\u4EF6\uFF09",
892
+ tags: ["optics", "interference"]
893
+ },
894
+ {
895
+ id: "diffraction-grating",
896
+ name: "\u5149\u6805\u65B9\u7A0B",
897
+ latex: "d \\sin\\theta = k \\lambda",
898
+ category: "physics",
899
+ description: "\u884D\u5C04\u5149\u6805\u65B9\u7A0B",
900
+ tags: ["optics", "diffraction"]
901
+ },
902
+ {
903
+ id: "brewster-angle",
904
+ name: "\u5E03\u5112\u65AF\u7279\u89D2",
905
+ latex: "\\tan\\theta_B = \\frac{n_2}{n_1}",
906
+ category: "physics",
907
+ description: "\u5E03\u5112\u65AF\u7279\u89D2\uFF08\u504F\u632F\uFF09",
908
+ tags: ["optics", "polarization"]
909
+ },
910
+ {
911
+ id: "malus-law",
912
+ name: "\u9A6C\u5415\u65AF\u5B9A\u5F8B",
913
+ latex: "I = I_0 \\cos^{2}\\theta",
914
+ category: "physics",
915
+ description: "\u9A6C\u5415\u65AF\u5B9A\u5F8B\uFF08\u504F\u632F\u5149\u5F3A\u5EA6\uFF09",
916
+ tags: ["optics", "polarization"]
917
+ },
918
+ // --------------------------------------------------------------------------
919
+ // 核物理 (Nuclear Physics)
920
+ // --------------------------------------------------------------------------
921
+ {
922
+ id: "radioactive-decay",
923
+ name: "\u653E\u5C04\u6027\u8870\u53D8\u5B9A\u5F8B",
924
+ latex: "N(t) = N_0 e^{-\\lambda t}",
925
+ category: "physics",
926
+ description: "\u653E\u5C04\u6027\u8870\u53D8\u5B9A\u5F8B\uFF08\u6307\u6570\u8870\u53D8\uFF09",
927
+ tags: ["nuclear", "decay"]
928
+ },
929
+ {
930
+ id: "half-life",
931
+ name: "\u534A\u8870\u671F",
932
+ latex: "t_{1/2} = \\frac{\\ln 2}{\\lambda}",
933
+ category: "physics",
934
+ description: "\u653E\u5C04\u6027\u534A\u8870\u671F",
935
+ tags: ["nuclear", "decay"]
936
+ },
937
+ {
938
+ id: "binding-energy",
939
+ name: "\u7ED3\u5408\u80FD",
940
+ latex: "E_B = [Zm_p + (A-Z)m_n - M]c^{2}",
941
+ category: "physics",
942
+ description: "\u539F\u5B50\u6838\u7ED3\u5408\u80FD",
943
+ tags: ["nuclear", "binding"]
944
+ },
945
+ {
946
+ id: "nuclear-reaction",
947
+ name: "\u6838\u53CD\u5E94 Q \u503C",
948
+ latex: "Q = (M_i - M_f)c^{2}",
949
+ category: "physics",
950
+ description: "\u6838\u53CD\u5E94\u91CA\u653E/\u5438\u6536\u7684\u80FD\u91CF",
951
+ tags: ["nuclear", "reaction"]
952
+ },
953
+ // --------------------------------------------------------------------------
954
+ // 流体力学 (Fluid Mechanics)
955
+ // --------------------------------------------------------------------------
956
+ {
957
+ id: "bernoulli",
958
+ name: "\u4F2F\u52AA\u5229\u65B9\u7A0B",
959
+ latex: "P + \\frac{1}{2}\\rho v^{2} + \\rho g h = \\text{const}",
960
+ category: "physics",
961
+ description: "\u4F2F\u52AA\u5229\u65B9\u7A0B\uFF08\u7406\u60F3\u6D41\u4F53\uFF09",
962
+ tags: ["fluid", "bernoulli"]
963
+ },
964
+ {
965
+ id: "continuity",
966
+ name: "\u8FDE\u7EED\u6027\u65B9\u7A0B",
967
+ latex: "A_1 v_1 = A_2 v_2",
968
+ category: "physics",
969
+ description: "\u6D41\u4F53\u8FDE\u7EED\u6027\u65B9\u7A0B",
970
+ tags: ["fluid", "continuity"]
971
+ },
972
+ {
973
+ id: "archimedes",
974
+ name: "\u963F\u57FA\u7C73\u5FB7\u539F\u7406",
975
+ latex: "F_B = \\rho_f g V_{\\text{disp}}",
976
+ category: "physics",
977
+ description: "\u963F\u57FA\u7C73\u5FB7\u6D6E\u529B\u539F\u7406",
978
+ tags: ["fluid", "buoyancy"]
979
+ },
980
+ {
981
+ id: "stokes-law",
982
+ name: "Stokes \u963B\u529B\u5B9A\u5F8B",
983
+ latex: "F_d = 6\\pi \\eta r v",
984
+ category: "physics",
985
+ description: "Stokes \u963B\u529B\u516C\u5F0F\uFF08\u4F4E\u901F\u5C0F\u7403\uFF09",
986
+ tags: ["fluid", "drag"]
987
+ },
988
+ {
989
+ id: "reynolds-number",
990
+ name: "\u96F7\u8BFA\u6570",
991
+ latex: "Re = \\frac{\\rho v L}{\\eta}",
992
+ category: "physics",
993
+ description: "\u96F7\u8BFA\u6570\uFF08\u5224\u65AD\u5C42\u6D41/\u6E4D\u6D41\uFF09",
994
+ tags: ["fluid", "reynolds"]
372
995
  }
373
996
  ];
374
997
  var ALL_MATH_TEMPLATES = [
@@ -1236,64 +1859,36 @@ function getElementsByGroup(group) {
1236
1859
  }
1237
1860
 
1238
1861
  // src/greek-presets.ts
1862
+ var import_math = require("@sciexpr/math");
1863
+ var VARIANT_MAP = {
1864
+ "\\epsilon": [{ latex: "\\varepsilon", unicode: "\u03B5", name: "Epsilon (var)" }],
1865
+ "\\theta": [{ latex: "\\vartheta", unicode: "\u03D1", name: "Theta (var)" }],
1866
+ "\\pi": [{ latex: "\\varpi", unicode: "\u03D6", name: "Pi (var)" }],
1867
+ "\\rho": [{ latex: "\\varrho", unicode: "\u03F1", name: "Rho (var)" }],
1868
+ "\\sigma": [{ latex: "\\varsigma", unicode: "\u03C2", name: "Sigma (final)" }],
1869
+ "\\phi": [{ latex: "\\varphi", unicode: "\u03D5", name: "Phi (var)" }]
1870
+ };
1871
+ function capitalize(s) {
1872
+ return s.charAt(0).toUpperCase() + s.slice(1);
1873
+ }
1874
+ function toGreekLetter(entry) {
1875
+ return {
1876
+ latex: entry.latex,
1877
+ unicode: entry.unicode,
1878
+ name: entry.description ?? capitalize(entry.name),
1879
+ englishName: entry.name,
1880
+ variants: VARIANT_MAP[entry.latex]
1881
+ };
1882
+ }
1239
1883
  var GREEK_LOWERCASE_GROUP = {
1240
1884
  id: "greek-lowercase",
1241
1885
  label: "Greek Lowercase (\u5C0F\u5199)",
1242
- letters: [
1243
- { latex: "\\alpha", unicode: "\u03B1", name: "Alpha", englishName: "alpha" },
1244
- { latex: "\\beta", unicode: "\u03B2", name: "Beta", englishName: "beta" },
1245
- { latex: "\\gamma", unicode: "\u03B3", name: "Gamma", englishName: "gamma" },
1246
- { latex: "\\delta", unicode: "\u03B4", name: "Delta", englishName: "delta" },
1247
- { latex: "\\epsilon", unicode: "\u03B5", name: "Epsilon", englishName: "epsilon", variants: [
1248
- { latex: "\\varepsilon", unicode: "\u03B5", name: "Epsilon (var)" }
1249
- ] },
1250
- { latex: "\\zeta", unicode: "\u03B6", name: "Zeta", englishName: "zeta" },
1251
- { latex: "\\eta", unicode: "\u03B7", name: "Eta", englishName: "eta" },
1252
- { latex: "\\theta", unicode: "\u03B8", name: "Theta", englishName: "theta", variants: [
1253
- { latex: "\\vartheta", unicode: "\u03D1", name: "Theta (var)" }
1254
- ] },
1255
- { latex: "\\iota", unicode: "\u03B9", name: "Iota", englishName: "iota" },
1256
- { latex: "\\kappa", unicode: "\u03BA", name: "Kappa", englishName: "kappa" },
1257
- { latex: "\\lambda", unicode: "\u03BB", name: "Lambda", englishName: "lambda" },
1258
- { latex: "\\mu", unicode: "\u03BC", name: "Mu", englishName: "mu" },
1259
- { latex: "\\nu", unicode: "\u03BD", name: "Nu", englishName: "nu" },
1260
- { latex: "\\xi", unicode: "\u03BE", name: "Xi", englishName: "xi" },
1261
- { latex: "\\omicron", unicode: "\u03BF", name: "Omicron", englishName: "omicron" },
1262
- { latex: "\\pi", unicode: "\u03C0", name: "Pi", englishName: "pi", variants: [
1263
- { latex: "\\varpi", unicode: "\u03D6", name: "Pi (var)" }
1264
- ] },
1265
- { latex: "\\rho", unicode: "\u03C1", name: "Rho", englishName: "rho", variants: [
1266
- { latex: "\\varrho", unicode: "\u03F1", name: "Rho (var)" }
1267
- ] },
1268
- { latex: "\\sigma", unicode: "\u03C3", name: "Sigma", englishName: "sigma", variants: [
1269
- { latex: "\\varsigma", unicode: "\u03C2", name: "Sigma (final)" }
1270
- ] },
1271
- { latex: "\\tau", unicode: "\u03C4", name: "Tau", englishName: "tau" },
1272
- { latex: "\\upsilon", unicode: "\u03C5", name: "Upsilon", englishName: "upsilon" },
1273
- { latex: "\\phi", unicode: "\u03C6", name: "Phi", englishName: "phi", variants: [
1274
- { latex: "\\varphi", unicode: "\u03D5", name: "Phi (var)" }
1275
- ] },
1276
- { latex: "\\chi", unicode: "\u03C7", name: "Chi", englishName: "chi" },
1277
- { latex: "\\psi", unicode: "\u03C8", name: "Psi", englishName: "psi" },
1278
- { latex: "\\omega", unicode: "\u03C9", name: "Omega", englishName: "omega" }
1279
- ]
1886
+ letters: import_math.GREEK_LOWERCASE.map(toGreekLetter)
1280
1887
  };
1281
1888
  var GREEK_UPPERCASE_GROUP = {
1282
1889
  id: "greek-uppercase",
1283
1890
  label: "Greek Uppercase (\u5927\u5199)",
1284
- letters: [
1285
- { latex: "\\Gamma", unicode: "\u0393", name: "Gamma", englishName: "Gamma" },
1286
- { latex: "\\Delta", unicode: "\u0394", name: "Delta", englishName: "Delta" },
1287
- { latex: "\\Theta", unicode: "\u0398", name: "Theta", englishName: "Theta" },
1288
- { latex: "\\Lambda", unicode: "\u039B", name: "Lambda", englishName: "Lambda" },
1289
- { latex: "\\Xi", unicode: "\u039E", name: "Xi", englishName: "Xi" },
1290
- { latex: "\\Pi", unicode: "\u03A0", name: "Pi", englishName: "Pi" },
1291
- { latex: "\\Sigma", unicode: "\u03A3", name: "Sigma", englishName: "Sigma" },
1292
- { latex: "\\Upsilon", unicode: "\u03A5", name: "Upsilon", englishName: "Upsilon" },
1293
- { latex: "\\Phi", unicode: "\u03A6", name: "Phi", englishName: "Phi" },
1294
- { latex: "\\Psi", unicode: "\u03A8", name: "Psi", englishName: "Psi" },
1295
- { latex: "\\Omega", unicode: "\u03A9", name: "Omega", englishName: "Omega" }
1296
- ]
1891
+ letters: import_math.GREEK_UPPERCASE.map(toGreekLetter)
1297
1892
  };
1298
1893
  var GREEK_GROUPS = [
1299
1894
  GREEK_LOWERCASE_GROUP,
@@ -1325,6 +1920,116 @@ function searchGreekWithVariants(query) {
1325
1920
  }
1326
1921
  return results;
1327
1922
  }
1923
+
1924
+ // src/palette-chem.ts
1925
+ var import_math2 = require("@sciexpr/math");
1926
+ function templateToEntry(t, isCommon) {
1927
+ return {
1928
+ latex: t.latex,
1929
+ unicode: "",
1930
+ name: t.name,
1931
+ description: t.description,
1932
+ isCommon
1933
+ };
1934
+ }
1935
+ function takeCommon(list, count) {
1936
+ return list.slice(0, count).map((t) => templateToEntry(t, true));
1937
+ }
1938
+ function takeRest(list, fromIndex) {
1939
+ return list.slice(fromIndex).map((t) => templateToEntry(t, false));
1940
+ }
1941
+ function fromGreekSymbol(s, desc, isCommon = false) {
1942
+ return { latex: s.latex, unicode: s.unicode, name: s.name, description: desc, isCommon };
1943
+ }
1944
+ var CHEM_GREEK_COMMON = /* @__PURE__ */ new Set([
1945
+ "\\alpha",
1946
+ "\\beta",
1947
+ "\\gamma",
1948
+ "\\delta",
1949
+ "\\epsilon",
1950
+ "\\mu",
1951
+ "\\nu",
1952
+ "\\pi",
1953
+ "\\rho",
1954
+ "\\sigma",
1955
+ "\\theta",
1956
+ "\\omega"
1957
+ ]);
1958
+ var CHEM_GREEK_DESCRIPTIONS = {
1959
+ "\\alpha": "\u5E38\u7528\u4E8E\u5316\u5B66\u8868\u793A",
1960
+ "\\delta": "\u5316\u5B66\u4F4D\u79FB",
1961
+ "\\Delta": "\u5927\u5199 Delta / \u52A0\u70ED\u7B26\u53F7",
1962
+ "\\epsilon": "\u6469\u5C14\u5438\u5149\u7CFB\u6570",
1963
+ "\\lambda": "\u6CE2\u957F",
1964
+ "\\mu": "\u5FAE (10\u207B\u2076) / \u5076\u6781\u77E9",
1965
+ "\\nu": "\u9891\u7387 / \u5316\u5B66\u8BA1\u91CF\u7CFB\u6570",
1966
+ "\\pi": "\u6E17\u900F\u538B",
1967
+ "\\rho": "\u5BC6\u5EA6",
1968
+ "\\sigma": "Sigma \u952E / \u8868\u9762\u5F20\u529B",
1969
+ "\\Sigma": "\u6C42\u548C",
1970
+ "\\theta": "\u8986\u76D6\u7387"
1971
+ };
1972
+ var CHEM_PALETTE_CATEGORIES = [
1973
+ {
1974
+ id: "compounds",
1975
+ label: "\u5316\u5B66\u7269\u8D28",
1976
+ symbols: [
1977
+ ...takeCommon(COMPOUND_TEMPLATES, 12),
1978
+ ...takeRest(COMPOUND_TEMPLATES, 12)
1979
+ ]
1980
+ },
1981
+ {
1982
+ id: "ions",
1983
+ label: "\u5316\u5B66\u79BB\u5B50",
1984
+ symbols: [
1985
+ ...takeCommon(ION_TEMPLATES, 10),
1986
+ ...takeRest(ION_TEMPLATES, 10)
1987
+ ]
1988
+ },
1989
+ {
1990
+ id: "chem-symbols",
1991
+ label: "\u5E38\u7528\u7B26\u53F7",
1992
+ symbols: [
1993
+ { latex: "\\ce{->}", unicode: "\u2192", name: "\u53CD\u5E94\u7BAD\u5934", description: "\u5316\u5B66\u53CD\u5E94\u751F\u6210", isCommon: true },
1994
+ { latex: "\\ce{<-}", unicode: "\u2190", name: "\u53CD\u5411\u7BAD\u5934", description: "\u9006\u53CD\u5E94", isCommon: false },
1995
+ { latex: "\\ce{<=>}", unicode: "\u21CC", name: "\u53EF\u9006\u53CD\u5E94", description: "\u5316\u5B66\u5E73\u8861", isCommon: true },
1996
+ { latex: "\\ce{<->}", unicode: "\u21C4", name: "\u53CC\u5411\u7BAD\u5934", isCommon: false },
1997
+ { latex: "\\ce{->[\\Delta]}", unicode: "\u2192[\u0394]", name: "\u52A0\u70ED\u53CD\u5E94", description: "\u52A0\u70ED\u6761\u4EF6\u4E0B", isCommon: true },
1998
+ { latex: "\\ce{->[H+]}", unicode: "\u2192[H\u207A]", name: "\u9178\u50AC\u5316", description: "\u9178\u6027\u6761\u4EF6", isCommon: false },
1999
+ { latex: "\\ce{->[\u4E0A\u9762][\u4E0B\u9762]}", unicode: "\u2192[...][...]", name: "\u6761\u4EF6\u53CD\u5E94", description: "\u663E\u793A\u53CD\u5E94\u6761\u4EF6", isCommon: true },
2000
+ { latex: "\\ce{^{2+}}", unicode: "\xB2\u207A", name: "\u7535\u8377+2", description: "\u4E8C\u4EF7\u9633\u79BB\u5B50", isCommon: true },
2001
+ { latex: "\\ce{^{3+}}", unicode: "\xB3\u207A", name: "\u7535\u8377+3", description: "\u4E09\u4EF7\u9633\u79BB\u5B50", isCommon: true },
2002
+ { latex: "\\ce{^{-}}", unicode: "\u207B", name: "\u7535\u8377-1", description: "\u4E00\u4EF7\u9634\u79BB\u5B50", isCommon: true },
2003
+ { latex: "\\ce{^{2-}}", unicode: "\xB2\u207B", name: "\u7535\u8377-2", description: "\u4E8C\u4EF7\u9634\u79BB\u5B50", isCommon: true },
2004
+ { latex: "\\uparrow", unicode: "\u2191", name: "\u6C14\u4F53\u9038\u51FA", description: "\u2191 \u4EA7\u751F\u6C14\u4F53", isCommon: true },
2005
+ { latex: "\\downarrow", unicode: "\u2193", name: "\u6C89\u6DC0", description: "\u2193 \u4EA7\u751F\u6C89\u6DC0", isCommon: true },
2006
+ { latex: "\\Delta", unicode: "\u0394", name: "\u52A0\u70ED\u7B26\u53F7", isCommon: true },
2007
+ { latex: "\\ce{H2O}", unicode: "H\u2082O", name: "\u6C34", isCommon: true },
2008
+ { latex: "pH", unicode: "pH", name: "pH\u503C", isCommon: true },
2009
+ { latex: "K_{sp}", unicode: "K_sp", name: "\u6EB6\u5EA6\u79EF\u5E38\u6570", isCommon: false },
2010
+ { latex: "K_a", unicode: "K_a", name: "\u9178\u89E3\u79BB\u5E38\u6570", isCommon: false },
2011
+ { latex: "K_b", unicode: "K_b", name: "\u78B1\u89E3\u79BB\u5E38\u6570", isCommon: false }
2012
+ ]
2013
+ },
2014
+ {
2015
+ id: "chem-greek",
2016
+ label: "\u5E0C\u814A\u5B57\u6BCD",
2017
+ symbols: [
2018
+ // Common Greek: lowercase (chemical subset, with domain-specific descriptions)
2019
+ ...import_math2.GREEK_LOWERCASE.filter((s) => CHEM_GREEK_COMMON.has(s.latex)).map((s) => fromGreekSymbol(s, CHEM_GREEK_DESCRIPTIONS[s.latex], true)),
2020
+ // Common Greek: uppercase (Delta, Sigma for chemistry)
2021
+ ...import_math2.GREEK_UPPERCASE.filter((s) => s.latex === "\\Delta" || s.latex === "\\Sigma").map((s) => fromGreekSymbol(s, CHEM_GREEK_DESCRIPTIONS[s.latex], s.latex === "\\Delta"))
2022
+ ]
2023
+ },
2024
+ {
2025
+ id: "chem-elements",
2026
+ label: "\u5316\u5B66\u5143\u7D20",
2027
+ symbols: [
2028
+ ...takeCommon(ELEMENT_TEMPLATES, 15),
2029
+ ...takeRest(ELEMENT_TEMPLATES, 15)
2030
+ ]
2031
+ }
2032
+ ];
1328
2033
  // Annotate the CommonJS export names for ESM import in node:
1329
2034
  0 && (module.exports = {
1330
2035
  ALGEBRA_TEMPLATES,
@@ -1332,6 +2037,7 @@ function searchGreekWithVariants(query) {
1332
2037
  ALL_GREEK,
1333
2038
  ALL_MATH_TEMPLATES,
1334
2039
  CALCULUS_TEMPLATES,
2040
+ CHEM_PALETTE_CATEGORIES,
1335
2041
  COMPOUND_TEMPLATES,
1336
2042
  ELECTROCHEM_TEMPLATES,
1337
2043
  ELEMENT_TEMPLATES,