@aleph-ai/tinyaleph 1.4.4 → 1.5.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.
Files changed (68) hide show
  1. package/backends/bioinformatics/binding.js +44 -52
  2. package/backends/bioinformatics/dna-computing.js +14 -23
  3. package/backends/bioinformatics/encoding.js +22 -30
  4. package/backends/bioinformatics/folding.js +24 -32
  5. package/backends/bioinformatics/genetic-code.js +17 -21
  6. package/backends/bioinformatics/index.js +12 -12
  7. package/backends/bioinformatics/transcription.js +5 -3
  8. package/backends/bioinformatics/translation.js +6 -4
  9. package/backends/cryptographic/index.js +10 -9
  10. package/backends/index.js +7 -6
  11. package/backends/interface.js +4 -1
  12. package/backends/scientific/index.js +7 -4
  13. package/backends/semantic/index.js +7 -4
  14. package/backends/semantic/surface.js +2 -1
  15. package/backends/semantic/two-layer.js +5 -3
  16. package/core/beacon.js +10 -9
  17. package/core/compound.js +4 -4
  18. package/core/crt-homology.js +40 -13
  19. package/core/enochian-vocabulary.js +5 -17
  20. package/core/enochian.js +3 -2
  21. package/core/entanglement.js +7 -7
  22. package/core/errors.js +2 -10
  23. package/core/events.js +7 -6
  24. package/core/fano.js +7 -6
  25. package/core/hilbert.js +40 -34
  26. package/core/hypercomplex.js +4 -2
  27. package/core/index.js +42 -80
  28. package/core/inference.js +6 -6
  29. package/core/lambda.js +5 -18
  30. package/core/llm.js +1 -1
  31. package/core/logger.js +3 -4
  32. package/core/prime.js +26 -1
  33. package/core/quaternion-semantics.js +3 -3
  34. package/core/reduction.js +5 -21
  35. package/core/resonance.js +20 -6
  36. package/core/rformer-crt.js +15 -29
  37. package/core/rformer-layers.js +12 -14
  38. package/core/rformer-tf.js +34 -43
  39. package/core/rformer.js +17 -32
  40. package/core/sieve.js +8 -3
  41. package/core/symbols/archetypes.js +3 -3
  42. package/core/symbols/base.js +4 -4
  43. package/core/symbols/elements.js +6 -3
  44. package/core/symbols/hieroglyphs.js +3 -3
  45. package/core/symbols/iching.js +3 -3
  46. package/core/symbols/index.js +32 -18
  47. package/core/symbols/tarot.js +6 -3
  48. package/core/symbols.js +26 -4
  49. package/core/topology.js +3 -14
  50. package/core/types.js +3 -14
  51. package/engine/aleph.js +8 -6
  52. package/engine/index.js +4 -2
  53. package/index.js +3 -2
  54. package/modular.js +18 -41
  55. package/package.json +4 -2
  56. package/physics/collapse.js +10 -11
  57. package/physics/entropy.js +8 -8
  58. package/physics/index.js +70 -102
  59. package/physics/kuramoto-coupled-ladder.js +10 -14
  60. package/physics/kuramoto.js +5 -2
  61. package/physics/lyapunov.js +7 -7
  62. package/physics/oscillator.js +5 -1
  63. package/physics/primeon_z_ladder_multi.js +7 -9
  64. package/physics/primeon_z_ladder_u.js +8 -9
  65. package/physics/stochastic-kuramoto.js +7 -7
  66. package/physics/sync-models.js +11 -14
  67. package/telemetry/index.js +1 -1
  68. package/telemetry/metrics.js +3 -8
package/core/lambda.js CHANGED
@@ -16,21 +16,17 @@
16
16
  * - S₁ ⇒ S₂ → τ(S₁) → τ(S₂)
17
17
  */
18
18
 
19
- const {
20
- NounTerm,
19
+ import { NounTerm,
21
20
  AdjTerm,
22
21
  ChainTerm,
23
22
  FusionTerm,
24
23
  NounSentence,
25
24
  SeqSentence,
26
25
  ImplSentence,
27
- N, A, FUSE, CHAIN
28
- } = require('./types');
26
+ N, A, FUSE, CHAIN } from './types.js';
29
27
 
30
- const {
31
- ReductionSystem,
32
- DEFAULT_OPERATOR
33
- } = require('./reduction');
28
+ import { ReductionSystem,
29
+ DEFAULT_OPERATOR } from './reduction.js';
34
30
 
35
31
  // ============================================================================
36
32
  // λ-EXPRESSION AST
@@ -1068,8 +1064,7 @@ class TypeDirectedTranslator extends Translator {
1068
1064
  // EXPORTS
1069
1065
  // ============================================================================
1070
1066
 
1071
- module.exports = {
1072
- // Lambda expressions
1067
+ export {
1073
1068
  LambdaExpr,
1074
1069
  VarExpr,
1075
1070
  ConstExpr,
@@ -1078,19 +1073,11 @@ module.exports = {
1078
1073
  PairExpr,
1079
1074
  ImplExpr,
1080
1075
  PrimOpExpr,
1081
-
1082
- // Translator
1083
1076
  Translator,
1084
1077
  TypeDirectedTranslator,
1085
-
1086
- // Evaluator
1087
1078
  LambdaEvaluator,
1088
-
1089
- // Semantics
1090
1079
  Semantics,
1091
1080
  ConceptInterpreter,
1092
-
1093
- // PRQS Lexicon (from TriadicPrimeFusion paper)
1094
1081
  PRQS_LEXICON,
1095
1082
  classifyPrime
1096
1083
  };
package/core/llm.js CHANGED
@@ -129,4 +129,4 @@ async function ping() {
129
129
  */
130
130
  const getConfig = () => ({ baseUrl: _baseUrl, model: _model });
131
131
 
132
- module.exports = { chat, complete, ask, configure, ping, getConfig };
132
+ export default { chat, complete, ask, configure, ping, getConfig };
package/core/logger.js CHANGED
@@ -12,8 +12,6 @@
12
12
  * Extracted from apps/sentient/lib/error-handler.js for library reuse.
13
13
  */
14
14
 
15
- const { LogLevel, LogLevelNames, SimpleEventEmitter } = require('./errors');
16
-
17
15
  // ============================================================================
18
16
  // LOGGER
19
17
  // ============================================================================
@@ -21,6 +19,8 @@ const { LogLevel, LogLevelNames, SimpleEventEmitter } = require('./errors');
21
19
  /**
22
20
  * Structured Logger
23
21
  */
22
+ import { LogLevel, LogLevelNames, SimpleEventEmitter } from './errors.js';
23
+
24
24
  class Logger extends SimpleEventEmitter {
25
25
  constructor(options = {}) {
26
26
  super();
@@ -341,10 +341,9 @@ function createLogger(namespace, options = {}) {
341
341
  // EXPORTS
342
342
  // ============================================================================
343
343
 
344
- module.exports = {
344
+ export {
345
345
  Logger,
346
346
  createLogger,
347
- // Re-export LogLevel for convenience
348
347
  LogLevel,
349
348
  LogLevelNames
350
349
  };
package/core/prime.js CHANGED
@@ -3,6 +3,7 @@
3
3
  */
4
4
 
5
5
  // Prime generation
6
+
6
7
  function* primeGenerator(start = 2) {
7
8
  let n = start;
8
9
  while (true) {
@@ -304,7 +305,31 @@ function findClosingPrimes(currentPrimes, epsilon = 1.0) {
304
305
  return candidates.sort((a, b) => a.error - b.error);
305
306
  }
306
307
 
307
- module.exports = {
308
+ // Named exports for ESM
309
+ export {
310
+ primeGenerator,
311
+ nthPrime,
312
+ primesUpTo,
313
+ isPrime,
314
+ factorize,
315
+ primeSignature,
316
+ firstNPrimes,
317
+ GaussianInteger,
318
+ EisensteinInteger,
319
+ primeToFrequency,
320
+ primeToAngle,
321
+ sumOfTwoSquares,
322
+ DEFAULT_PRIMES,
323
+ // 108 Invariant exports
324
+ TWIST_108,
325
+ twistAngle,
326
+ totalTwist,
327
+ isTwistClosed,
328
+ findClosingPrimes
329
+ };
330
+
331
+ // Default export for backwards compatibility
332
+ export default {
308
333
  primeGenerator, nthPrime, primesUpTo, isPrime,
309
334
  factorize, primeSignature, firstNPrimes,
310
335
  GaussianInteger, EisensteinInteger,
@@ -16,8 +16,6 @@
16
16
  * not from predetermined labels.
17
17
  */
18
18
 
19
- const { isPrime, twistAngle, nthPrime } = require('./prime');
20
-
21
19
  // ============================================================================
22
20
  // AXIS MAPPING STRATEGIES
23
21
  // ============================================================================
@@ -25,6 +23,8 @@ const { isPrime, twistAngle, nthPrime } = require('./prime');
25
23
  /**
26
24
  * Golden ratio for axis distribution
27
25
  */
26
+ import { isPrime, twistAngle, nthPrime } from './prime.js';
27
+
28
28
  const PHI = (1 + Math.sqrt(5)) / 2;
29
29
 
30
30
  /**
@@ -589,7 +589,7 @@ function analyzePrimeFamily(primes) {
589
589
  // EXPORTS
590
590
  // ============================================================================
591
591
 
592
- module.exports = {
592
+ export default {
593
593
  // Axis mapping strategies
594
594
  AxisMapper,
595
595
  ModularAxisMapper,
package/core/reduction.js CHANGED
@@ -10,17 +10,16 @@
10
10
  * - Prime-preserving ⊕ operator
11
11
  */
12
12
 
13
- const { isPrime, nthPrime, firstNPrimes } = require('./prime');
14
- const {
15
- NounTerm,
13
+ import { isPrime, nthPrime, firstNPrimes } from './prime.js';
14
+
15
+ import { NounTerm,
16
16
  AdjTerm,
17
17
  ChainTerm,
18
18
  FusionTerm,
19
19
  NounSentence,
20
20
  SeqSentence,
21
21
  ImplSentence,
22
- N, A, FUSE, CHAIN
23
- } = require('./types');
22
+ N, A, FUSE, CHAIN } from './types.js';
24
23
 
25
24
  // ============================================================================
26
25
  // PRIME-PRESERVING OPERATORS (⊕)
@@ -1091,41 +1090,26 @@ function testLocalConfluence(reducer = null) {
1091
1090
  // EXPORTS
1092
1091
  // ============================================================================
1093
1092
 
1094
- module.exports = {
1095
- // Operators
1093
+ export {
1096
1094
  PrimeOperator,
1097
1095
  NextPrimeOperator,
1098
1096
  ModularPrimeOperator,
1099
1097
  ResonancePrimeOperator,
1100
1098
  IdentityPrimeOperator,
1101
1099
  DEFAULT_OPERATOR,
1102
-
1103
- // Reduction
1104
1100
  ReductionStep,
1105
1101
  ReductionTrace,
1106
1102
  ReductionSystem,
1107
-
1108
- // Utilities
1109
1103
  isNormalForm,
1110
1104
  isReducible,
1111
1105
  termSize,
1112
1106
  termDepth,
1113
1107
  extractPrimes,
1114
-
1115
- // Canonicalization
1116
1108
  FusionCanonicalizer,
1117
-
1118
- // Verification
1119
1109
  NormalFormVerifier,
1120
-
1121
- // Formal Proofs (from ncpsc.pdf §5)
1122
1110
  ProofTrace,
1123
1111
  ProofGenerator,
1124
-
1125
- // Route Statistics (from ncpsc.pdf §3)
1126
1112
  RouteStatistics,
1127
-
1128
- // Proofs
1129
1113
  demonstrateStrongNormalization,
1130
1114
  testLocalConfluence
1131
1115
  };
package/core/resonance.js CHANGED
@@ -12,6 +12,7 @@
12
12
  */
13
13
 
14
14
  // Golden ratio constant
15
+
15
16
  const PHI = 1.618033988749895;
16
17
  const PHI_THRESHOLD = 0.1; // How close to φ counts as "golden"
17
18
  const PHI_BONUS = 0.3; // Bonus for golden ratio relationships
@@ -309,16 +310,29 @@ function findFibonacciSequences(primes, minLength = 3) {
309
310
  // Singleton instance for convenience
310
311
  const defaultCalculator = new ResonanceCalculator();
311
312
 
312
- module.exports = {
313
+ // Named exports for ESM compatibility
314
+ export {
315
+ ResonanceCalculator,
316
+ resonanceSignature,
317
+ findFibonacciSequences,
318
+ PHI,
319
+ PHI_THRESHOLD,
320
+ PHI_BONUS
321
+ };
322
+
323
+ // Convenience functions using default calculator
324
+ export const calculateResonance = (p1, p2) => defaultCalculator.calculateResonance(p1, p2);
325
+ export const findGoldenPairs = (primes) => defaultCalculator.findGoldenPairs(primes);
326
+ export const findMostResonant = (target, candidates) => defaultCalculator.findMostResonant(target, candidates);
327
+
328
+ export default {
313
329
  ResonanceCalculator,
314
330
  resonanceSignature,
315
331
  findFibonacciSequences,
316
332
  PHI,
317
333
  PHI_THRESHOLD,
318
334
  PHI_BONUS,
319
-
320
- // Convenience functions using default calculator
321
- calculateResonance: (p1, p2) => defaultCalculator.calculateResonance(p1, p2),
322
- findGoldenPairs: (primes) => defaultCalculator.findGoldenPairs(primes),
323
- findMostResonant: (target, candidates) => defaultCalculator.findMostResonant(target, candidates)
335
+ calculateResonance,
336
+ findGoldenPairs,
337
+ findMostResonant
324
338
  };
@@ -18,35 +18,29 @@
18
18
 
19
19
  'use strict';
20
20
 
21
- const {
22
- Quaternion,
21
+ import { Complex, PrimeState } from './hilbert.js';
22
+ import { firstNPrimes, isPrime } from './prime.js';
23
+
24
+ import { Quaternion,
23
25
  SparsePrimeState,
24
26
  resonanceScore,
25
27
  resonantAttention,
26
28
  hamiltonCompose,
27
- computeCoherence
28
- } = require('./rformer');
29
+ computeCoherence } from './rformer.js';
29
30
 
30
- const {
31
- ResonantMultiHeadAttention,
31
+ import { ResonantMultiHeadAttention,
32
32
  PrimeFFN,
33
33
  PrimeLayerNorm,
34
34
  PositionalPrimeEncoding,
35
- ResoFormerBlock
36
- } = require('./rformer-layers');
35
+ ResoFormerBlock } from './rformer-layers.js';
37
36
 
38
- const {
39
- CRTReconstructor,
37
+ import { CRTReconstructor,
40
38
  BirkhoffProjector,
41
39
  HomologyLoss,
42
40
  CRTModularLayer,
43
41
  CRTFusedAttention,
44
42
  CoprimeSelector,
45
- ResidueEncoder
46
- } = require('./crt-homology');
47
-
48
- const { Complex, PrimeState } = require('./hilbert');
49
- const { firstNPrimes, isPrime } = require('./prime');
43
+ ResidueEncoder } from './crt-homology.js';
50
44
 
51
45
  /**
52
46
  * CRTResonantAttention - Multi-head attention with CRT-fused modular structure
@@ -876,17 +870,9 @@ function createCRTResoFormer(config = {}) {
876
870
  });
877
871
  }
878
872
 
879
- module.exports = {
880
- // CRT-enhanced attention
881
- CRTResonantAttention,
882
-
883
- // Homology-regularized block
884
- HomologyRegularizedBlock,
885
-
886
- // Complete model
887
- CRTResoFormer,
888
-
889
- // Factory function
890
- createCRTResoFormer
891
- };
892
-
873
+ export {
874
+ CRTResonantAttention,
875
+ HomologyRegularizedBlock,
876
+ CRTResoFormer,
877
+ createCRTResoFormer
878
+ };
@@ -14,17 +14,15 @@
14
14
 
15
15
  'use strict';
16
16
 
17
- const {
18
- Quaternion,
17
+ import { Complex, PrimeState } from './hilbert.js';
18
+ import { firstNPrimes, nthPrime, isPrime } from './prime.js';
19
+
20
+ import { Quaternion,
19
21
  SparsePrimeState,
20
22
  resonanceScore,
21
23
  resonantAttention,
22
24
  hamiltonCompose,
23
- computeCoherence
24
- } = require('./rformer');
25
-
26
- const { Complex, PrimeState } = require('./hilbert');
27
- const { firstNPrimes, nthPrime, isPrime } = require('./prime');
25
+ computeCoherence } from './rformer.js';
28
26
 
29
27
  /**
30
28
  * ResonantMultiHeadAttention
@@ -801,11 +799,11 @@ class ResoFormer {
801
799
  }
802
800
  }
803
801
 
804
- module.exports = {
805
- ResonantMultiHeadAttention,
806
- PrimeFFN,
807
- PrimeLayerNorm,
808
- PositionalPrimeEncoding,
809
- ResoFormerBlock,
810
- ResoFormer
802
+ export {
803
+ ResonantMultiHeadAttention,
804
+ PrimeFFN,
805
+ PrimeLayerNorm,
806
+ PositionalPrimeEncoding,
807
+ ResoFormerBlock,
808
+ ResoFormer
811
809
  };
@@ -13,20 +13,22 @@
13
13
  * State space: H_Q = H_P ⊗ ℍ (Prime Hilbert space ⊗ Quaternions)
14
14
  */
15
15
 
16
- let tf;
16
+ import { firstNPrimes } from './prime.js';
17
+
18
+ let tf = null;
17
19
  try {
18
- tf = require('@tensorflow/tfjs-node');
20
+ const mod = await import('@tensorflow/tfjs-node');
21
+ tf = mod.default || mod;
19
22
  } catch (e) {
20
- try {
21
- tf = require('@tensorflow/tfjs');
22
- } catch (e2) {
23
- console.warn('TensorFlow.js not available. Install with: npm install @tensorflow/tfjs-node');
24
- tf = null;
25
- }
23
+ try {
24
+ const mod = await import('@tensorflow/tfjs');
25
+ tf = mod.default || mod;
26
+ } catch (e2) {
27
+ console.warn('tf not available');
28
+ tf = null;
29
+ }
26
30
  }
27
31
 
28
- const { firstNPrimes } = require('./prime');
29
-
30
32
  // ============================================================================
31
33
  // UTILITY FUNCTIONS
32
34
  // ============================================================================
@@ -1050,37 +1052,26 @@ async function trainStep(model, optimizer, xBatch, yBatch) {
1050
1052
  // EXPORTS
1051
1053
  // ============================================================================
1052
1054
 
1053
- module.exports = {
1054
- // Utility functions
1055
- getPrimeLookup,
1056
- getPrimeLogFrequencies,
1057
-
1058
- // Quaternion operations
1059
- quaternionMul,
1060
- quaternionConj,
1061
- quaternionNorm2,
1062
- quaternionNormalize,
1063
-
1064
- // Custom layers
1065
- QuaternionDense,
1066
- SparsePrimeEmbedding,
1067
- ResonantAttention,
1068
- HamiltonCompose,
1069
- CoherenceGating,
1070
- EntropyCollapse,
1071
- ResonanceOperator,
1072
- ResoFormerBlock,
1073
-
1074
- // Model builders
1075
- createResoFormerModel,
1076
- createResoFormerClassifier,
1077
- createResoFormerEmbedder,
1078
-
1079
- // Training utilities
1080
- resoFormerLoss,
1081
- createOptimizer,
1082
- trainStep,
1083
-
1084
- // TensorFlow reference (for users who need it)
1085
- tf
1055
+ export {
1056
+ getPrimeLookup,
1057
+ getPrimeLogFrequencies,
1058
+ quaternionMul,
1059
+ quaternionConj,
1060
+ quaternionNorm2,
1061
+ quaternionNormalize,
1062
+ QuaternionDense,
1063
+ SparsePrimeEmbedding,
1064
+ ResonantAttention,
1065
+ HamiltonCompose,
1066
+ CoherenceGating,
1067
+ EntropyCollapse,
1068
+ ResonanceOperator,
1069
+ ResoFormerBlock,
1070
+ createResoFormerModel,
1071
+ createResoFormerClassifier,
1072
+ createResoFormerEmbedder,
1073
+ resoFormerLoss,
1074
+ createOptimizer,
1075
+ trainStep,
1076
+ tf
1086
1077
  };
package/core/rformer.js CHANGED
@@ -14,9 +14,6 @@
14
14
  * - Prime Resonant Graph Database
15
15
  */
16
16
 
17
- const { firstNPrimes, isPrime, factorize } = require('./prime');
18
- const { Complex, PrimeState } = require('./hilbert');
19
-
20
17
  // ============================================================================
21
18
  // QUATERNION ALGEBRA
22
19
  // ============================================================================
@@ -25,6 +22,9 @@ const { Complex, PrimeState } = require('./hilbert');
25
22
  * Full Quaternion class for H_Q representation
26
23
  * q = w + xi + yj + zk (Hamilton quaternion)
27
24
  */
25
+ import { firstNPrimes, isPrime, factorize } from './prime.js';
26
+ import { Complex, PrimeState } from './hilbert.js';
27
+
28
28
  class Quaternion {
29
29
  constructor(w = 1, x = 0, y = 0, z = 0) {
30
30
  this.w = w; // scalar part
@@ -774,33 +774,18 @@ function applyResonanceOperator(state, n) {
774
774
  return result;
775
775
  }
776
776
 
777
- module.exports = {
778
- // Quaternion
779
- Quaternion,
780
-
781
- // Sparse Prime State
782
- SparsePrimeState,
783
-
784
- // Attention
785
- resonanceScore,
786
- resonantAttention,
787
-
788
- // Composition
789
- hamiltonCompose,
790
- measureNonCommutativity,
791
-
792
- // Halting
793
- computeCoherence,
794
- haltingDecision,
795
- coherenceGatedCompute,
796
-
797
- // Collapse
798
- EntropyCollapseHead,
799
- generateAttractorCodebook,
800
-
801
- // Memory
802
- PRGraphMemory,
803
-
804
- // Operators
805
- applyResonanceOperator
777
+ export {
778
+ Quaternion,
779
+ SparsePrimeState,
780
+ resonanceScore,
781
+ resonantAttention,
782
+ hamiltonCompose,
783
+ measureNonCommutativity,
784
+ computeCoherence,
785
+ haltingDecision,
786
+ coherenceGatedCompute,
787
+ EntropyCollapseHead,
788
+ generateAttractorCodebook,
789
+ PRGraphMemory,
790
+ applyResonanceOperator
806
791
  };
package/core/sieve.js CHANGED
@@ -5,9 +5,14 @@
5
5
  * See: docs/sieve.md
6
6
  */
7
7
 
8
- const fs = require('fs');
9
- const path = require('path');
10
- const { createEngine, SemanticBackend, isPrime, LLM } = require('../modular');
8
+ import { createEngine, SemanticBackend, LLM } from '../modular.js';
9
+
10
+ import fs from 'fs';
11
+ import path from 'path';
12
+ import { fileURLToPath } from 'url';
13
+
14
+ const __filename = fileURLToPath(import.meta.url);
15
+ const __dirname = path.dirname(__filename);
11
16
 
12
17
  const DATA_FILE = path.join(__dirname, '..', 'data.json');
13
18
 
@@ -7,7 +7,7 @@
7
7
  * cultural, and symbolic meanings.
8
8
  */
9
9
 
10
- const { SymbolCategory } = require('./base');
10
+ import { SymbolCategory } from './base.js';
11
11
 
12
12
  const archetypeSymbols = [
13
13
  // ═══════════════════════════════════════════════════════════════════
@@ -473,6 +473,6 @@ const archetypeSymbols = [
473
473
  }
474
474
  ];
475
475
 
476
- module.exports = {
477
- archetypeSymbols
476
+ export {
477
+ archetypeSymbols
478
478
  };
@@ -295,8 +295,8 @@ class SymbolDatabase {
295
295
  }
296
296
  }
297
297
 
298
- module.exports = {
299
- SymbolDatabase,
300
- SymbolCategory,
301
- PrimeGenerator
298
+ export {
299
+ SymbolDatabase,
300
+ SymbolCategory,
301
+ PrimeGenerator
302
302
  };
@@ -7,7 +7,7 @@
7
7
  * human symbolic expression.
8
8
  */
9
9
 
10
- const { SymbolCategory } = require('./base');
10
+ import { SymbolCategory } from './base.js';
11
11
 
12
12
  const elementSymbols = [
13
13
  // ═══════════════════════════════════════════════════════════════════
@@ -478,10 +478,13 @@ const abstractSymbols = [
478
478
  }
479
479
  ];
480
480
 
481
- module.exports = {
481
+ // Named export for allElementSymbols (used by index.js)
482
+ export const allElementSymbols = [...elementSymbols, ...placeSymbols, ...objectSymbols, ...abstractSymbols];
483
+
484
+ export default {
482
485
  elementSymbols,
483
486
  placeSymbols,
484
487
  objectSymbols,
485
488
  abstractSymbols,
486
- allElementSymbols: [...elementSymbols, ...placeSymbols, ...objectSymbols, ...abstractSymbols]
489
+ allElementSymbols
487
490
  };
@@ -10,7 +10,7 @@
10
10
  * Fallback emoji equivalents are provided where possible.
11
11
  */
12
12
 
13
- const { SymbolCategory } = require('./base');
13
+ import { SymbolCategory } from './base.js';
14
14
 
15
15
  const egyptianHieroglyphs = [
16
16
  // ═══════════════════════════════════════════════════════════════════
@@ -298,6 +298,6 @@ const egyptianHieroglyphs = [
298
298
  }
299
299
  ];
300
300
 
301
- module.exports = {
302
- egyptianHieroglyphs
301
+ export {
302
+ egyptianHieroglyphs
303
303
  };
@@ -9,7 +9,7 @@
9
9
  * Unicode range: U+4DC0 to U+4DFF (Yijing Hexagram Symbols)
10
10
  */
11
11
 
12
- const { SymbolCategory } = require('./base');
12
+ import { SymbolCategory } from './base.js';
13
13
 
14
14
  const ichingHexagrams = [
15
15
  // ═══════════════════════════════════════════════════════════════════
@@ -466,6 +466,6 @@ const ichingHexagrams = [
466
466
  }
467
467
  ];
468
468
 
469
- module.exports = {
470
- ichingHexagrams
469
+ export {
470
+ ichingHexagrams
471
471
  };