@tresjs/core 5.2.1 → 5.3.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.
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * name: @tresjs/core
3
- * version: v5.2.1
4
- * (c) 2025
3
+ * version: v5.3.1
4
+ * (c) 2026
5
5
  * description: Declarative ThreeJS using Vue Components
6
6
  * author: Alvaro Saburido <hola@alvarosaburido.dev> (https://github.com/alvarosabu/)
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * name: @tresjs/core
3
- * version: v5.2.1
4
- * (c) 2025
3
+ * version: v5.3.1
4
+ * (c) 2026
5
5
  * description: Declarative ThreeJS using Vue Components
6
6
  * author: Alvaro Saburido <hola@alvarosaburido.dev> (https://github.com/alvarosabu/)
7
7
  */
package/dist/tres.d.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * name: @tresjs/core
3
- * version: v5.2.1
4
- * (c) 2025
3
+ * version: v5.3.1
4
+ * (c) 2026
5
5
  * description: Declarative ThreeJS using Vue Components
6
6
  * author: Alvaro Saburido <hola@alvarosaburido.dev> (https://github.com/alvarosabu/)
7
7
  */
8
- import * as vue0 from "vue";
8
+ import * as vue9 from "vue";
9
9
  import { App, ComputedRef, DefineComponent, MaybeRef, MaybeRefOrGetter, Reactive, Ref, ShallowRef, VNode, VNodeRef } from "vue";
10
10
  import * as THREE from "three";
11
11
  import { BufferGeometry, Camera, Color, ColorRepresentation, ColorSpace, Event, Fog, Group, Layers, Light, Loader, LoadingManager, Material, Mesh, Object3D, Object3DEventMap, OrthographicCamera, PerspectiveCamera, Scene, ShadowMapType, ToneMapping, Vector3, WebGLRenderer } from "three";
@@ -312,7 +312,7 @@ declare function useRendererManager({
312
312
  onReady: _vueuse_core0.EventHookOn<TresRenderer>;
313
313
  onRender: _vueuse_core0.EventHookOn<TresRenderer>;
314
314
  invalidate: (amountOfFramesToInvalidate?: number) => void;
315
- canBeInvalidated: vue0.ComputedRef<boolean>;
315
+ canBeInvalidated: vue9.ComputedRef<boolean>;
316
316
  mode: "always" | "on-demand" | "manual" | undefined;
317
317
  replaceRenderFunction: (fn: RenderFunction) => void;
318
318
  };
@@ -363,10 +363,10 @@ type AttachFnType = (parent: any, self: TresInstance) => () => void;
363
363
  type AttachType = string | AttachFnType;
364
364
  type DisposeType = ((self: TresInstance) => void) | boolean | 'default';
365
365
  type ConstructorRepresentation = new (...args: any[]) => any;
366
- type NonFunctionKeys<P$1> = { [K in keyof P$1]-?: P$1[K] extends ((...args: any[]) => any) ? never : K }[keyof P$1];
367
- type Overwrite<P$1, O> = Omit<P$1, NonFunctionKeys<O>> & O;
366
+ type NonFunctionKeys<P> = { [K in keyof P]-?: P[K] extends ((...args: any[]) => any) ? never : K }[keyof P];
367
+ type Overwrite<P, O> = Omit<P, NonFunctionKeys<O>> & O;
368
368
  type Properties<T> = Pick<T, NonFunctionKeys<T>>;
369
- type Mutable<P$1> = { [K in keyof P$1]: P$1[K] | Readonly<P$1[K]> };
369
+ type Mutable<P> = { [K in keyof P]: P[K] | Readonly<P[K]> };
370
370
  type Args<T> = T extends ConstructorRepresentation ? ConstructorParameters<T> : any[];
371
371
  interface TresCatalogue {
372
372
  [name: string]: ConstructorRepresentation;
@@ -378,8 +378,8 @@ type TresCamera = THREE.OrthographicCamera | THREE.PerspectiveCamera;
378
378
  * @template T - The type of the object.
379
379
  * @template P - The type of the arguments.
380
380
  */
381
- interface InstanceProps<T = any, P$1 = any> {
382
- args?: Args<P$1>;
381
+ interface InstanceProps<T = any, P = any> {
382
+ args?: Args<P>;
383
383
  object?: T;
384
384
  visible?: boolean;
385
385
  dispose?: null;
@@ -456,17 +456,17 @@ type TresContextWithClock = TresContext & {
456
456
  delta: number;
457
457
  elapsed: number;
458
458
  };
459
- type WithMathProps<P$1> = { [K in keyof P$1]: P$1[K] extends MathRepresentation | THREE.Euler ? MathType<P$1[K]> : P$1[K] };
459
+ type WithMathProps<P> = { [K in keyof P]: P[K] extends MathRepresentation | THREE.Euler ? MathType<P[K]> : P[K] };
460
460
  interface RaycastableRepresentation {
461
461
  raycast: (raycaster: THREE.Raycaster, intersects: THREE.Intersection[]) => void;
462
462
  }
463
- type EventProps<P$1> = P$1 extends RaycastableRepresentation ? Partial<PointerEventHandlers> : unknown;
463
+ type EventProps<P> = P extends RaycastableRepresentation ? Partial<PointerEventHandlers> : unknown;
464
464
  interface VueProps {
465
465
  children?: VNode[];
466
466
  ref?: VNodeRef;
467
467
  key?: string | number | symbol;
468
468
  }
469
- type ElementProps<T extends ConstructorRepresentation, P$1 = InstanceType<T>> = Partial<Overwrite<P$1, WithMathProps<P$1> & VueProps & EventProps<P$1>>>;
469
+ type ElementProps<T extends ConstructorRepresentation, P = InstanceType<T>> = Partial<Overwrite<P, WithMathProps<P> & VueProps & EventProps<P>>>;
470
470
  type ThreeElement<T extends ConstructorRepresentation> = Mutable<Overwrite<ElementProps<T>, Omit<InstanceProps<InstanceType<T>, T>, 'object'>>>;
471
471
  type ThreeExports = typeof THREE;
472
472
  type ThreeInstancesImpl = { [K in keyof ThreeExports as Uncapitalize<K>]: ThreeExports[K] extends ConstructorRepresentation ? ThreeElement<ThreeExports[K]> : never };
@@ -499,7 +499,7 @@ declare function buildGraph(object: Object3D | TresObject): TresObjectMap;
499
499
  //#endregion
500
500
  //#region src/composables/useLoader/component.vue.d.ts
501
501
  declare const __VLS_export$1: <T extends TresObjectMap>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
502
- props: __VLS_PrettifyLocal<{
502
+ props: vue9.PublicProps & __VLS_PrettifyLocal<{
503
503
  /**
504
504
  * The THREE.js loader to use
505
505
  */
@@ -515,27 +515,27 @@ declare const __VLS_export$1: <T extends TresObjectMap>(__VLS_props: NonNullable
515
515
  } & {
516
516
  onLoaded?: ((result: T) => any) | undefined;
517
517
  onError?: ((error: unknown) => any) | undefined;
518
- }> & vue0.PublicProps & (typeof globalThis extends {
518
+ }> & (typeof globalThis extends {
519
519
  __VLS_PROPS_FALLBACK: infer P;
520
520
  } ? P : {});
521
521
  expose: (exposed: {}) => void;
522
522
  attrs: any;
523
523
  slots: {
524
524
  default?: (props: {
525
- state: vue0.UnwrapRef<T>;
525
+ state: vue9.UnwrapRef<T>;
526
526
  isLoading: boolean;
527
527
  error: unknown;
528
528
  }) => any;
529
529
  };
530
530
  emit: ((evt: "loaded", result: T) => void) & ((evt: "error", error: unknown) => void);
531
- }>) => vue0.VNode & {
531
+ }>) => vue9.VNode & {
532
532
  __ctx?: Awaited<typeof __VLS_setup>;
533
533
  };
534
534
  declare const _default$1: typeof __VLS_export$1;
535
535
  type __VLS_PrettifyLocal<T> = (T extends any ? { [K in keyof T]: T[K] } : { [K in keyof T as K]: T[K] }) & {};
536
536
  //#endregion
537
537
  //#region src/composables/useGraph/index.d.ts
538
- declare const useGraph: (object: MaybeRef$1<TresObject | undefined>) => vue0.ComputedRef<TresObjectMap | undefined>;
538
+ declare const useGraph: (object: MaybeRef$1<TresObject | undefined>) => vue9.ComputedRef<TresObjectMap | undefined>;
539
539
  //#endregion
540
540
  //#region src/utils/createPriorityEventHook.d.ts
541
541
  type Callback<T> = Parameters<EventHookOff<T>>[0];
@@ -586,12 +586,17 @@ type LoopContext = RafLoopContext & TresPartialContext;
586
586
  declare const useLoop: () => {
587
587
  stop: () => void;
588
588
  start: () => void;
589
- isActive: Readonly<vue0.ShallowRef<boolean>>;
589
+ isActive: Readonly<vue9.ShallowRef<boolean>>;
590
590
  onBeforeRender: PriorityEventHookOn<LoopContext>;
591
591
  onRender: PriorityEventHookOn<LoopContext>;
592
592
  render: (fn: RenderFunction) => void;
593
593
  };
594
594
  //#endregion
595
+ //#region src/core/nodeOps.d.ts
596
+ interface TresCustomRendererOptions {
597
+ primitivePrefix?: string;
598
+ }
599
+ //#endregion
595
600
  //#region src/utils/logger.d.ts
596
601
  /**
597
602
  * Logger utility for TresJS
@@ -644,8 +649,8 @@ declare const templateCompilerOptions: {
644
649
  };
645
650
  };
646
651
  //#endregion
647
- //#region src/components/TresCanvas.vue.d.ts
648
- interface TresCanvasProps extends RendererOptions {
652
+ //#region src/components/Context.vue.d.ts
653
+ interface ContextProps extends RendererOptions {
649
654
  /**
650
655
  * Custom camera instance to use as main camera
651
656
  * If not provided, a default PerspectiveCamera will be created
@@ -663,14 +668,23 @@ interface TresCanvasProps extends RendererOptions {
663
668
  * @default true
664
669
  */
665
670
  enableProvideBridge?: boolean;
671
+ /**
672
+ * Options for the TresJS custom renderer
673
+ *
674
+ */
675
+ customRendererOptions?: TresCustomRendererOptions;
666
676
  }
667
- type TresCanvasEmits = {
677
+ type ContextEmits = {
668
678
  ready: [context: TresContext];
669
679
  pointermissed: [event: TresPointerEvent];
670
680
  render: [context: TresContext];
671
681
  beforeLoop: [context: TresContextWithClock];
672
682
  loop: [context: TresContextWithClock];
673
683
  } & { [key in TresPointerEventName]: [event: TresPointerEvent] };
684
+ //#endregion
685
+ //#region src/components/TresCanvas.vue.d.ts
686
+ type TresCanvasEmits = ContextEmits;
687
+ type TresCanvasProps = ContextProps;
674
688
  interface TresCanvasInstance {
675
689
  get context(): TresContext | undefined;
676
690
  dispose: () => void;
@@ -678,7 +692,7 @@ interface TresCanvasInstance {
678
692
  type __VLS_Slots = {
679
693
  default: () => any;
680
694
  };
681
- declare const __VLS_base: vue0.DefineComponent<TresCanvasProps, TresCanvasInstance, {}, {}, {}, vue0.ComponentOptionsMixin, vue0.ComponentOptionsMixin, {
695
+ declare const __VLS_base: vue9.DefineComponent<ContextProps, TresCanvasInstance, {}, {}, {}, vue9.ComponentOptionsMixin, vue9.ComponentOptionsMixin, {
682
696
  click: (event: TresPointerEvent) => any;
683
697
  contextmenu: (event: TresPointerEvent) => any;
684
698
  pointermove: (event: TresPointerEvent) => any;
@@ -697,7 +711,7 @@ declare const __VLS_base: vue0.DefineComponent<TresCanvasProps, TresCanvasInstan
697
711
  render: (context: TresContext) => any;
698
712
  beforeLoop: (context: TresContextWithClock) => any;
699
713
  loop: (context: TresContextWithClock) => any;
700
- }, string, vue0.PublicProps, Readonly<TresCanvasProps> & Readonly<{
714
+ }, string, vue9.PublicProps, Readonly<ContextProps> & Readonly<{
701
715
  onClick?: ((event: TresPointerEvent) => any) | undefined;
702
716
  onContextmenu?: ((event: TresPointerEvent) => any) | undefined;
703
717
  onPointermove?: ((event: TresPointerEvent) => any) | undefined;
@@ -718,6 +732,7 @@ declare const __VLS_base: vue0.DefineComponent<TresCanvasProps, TresCanvasInstan
718
732
  onLoop?: ((context: TresContextWithClock) => any) | undefined;
719
733
  }>, {
720
734
  windowSize: boolean;
735
+ enableProvideBridge: boolean;
721
736
  antialias: boolean;
722
737
  stencil: boolean;
723
738
  depth: boolean;
@@ -732,8 +747,7 @@ declare const __VLS_base: vue0.DefineComponent<TresCanvasProps, TresCanvasInstan
732
747
  shadowMapType: THREE.ShadowMapType;
733
748
  useLegacyLights: boolean;
734
749
  renderMode: "always" | "on-demand" | "manual";
735
- enableProvideBridge: boolean;
736
- }, {}, {}, {}, string, vue0.ComponentProvideOptions, false, {}, any>;
750
+ }, {}, {}, {}, string, vue9.ComponentProvideOptions, false, {}, any>;
737
751
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
738
752
  declare const _default: typeof __VLS_export;
739
753
  type __VLS_WithSlots<T, S> = T & {
@@ -1067,4 +1081,4 @@ interface TresPlugin {
1067
1081
  }
1068
1082
  declare const plugin: TresPlugin;
1069
1083
  //#endregion
1070
- export { Args, AssetLoadData, AttachFnType, AttachType, ConstructorRepresentation, DevtoolsMessage, DevtoolsMessageType, DevtoolsMessenger, DevtoolsSubscriber, DisposeType, ElementProps, InstanceProps, LoaderMethods, LoaderProto, LocalState, LoopContext, MathType, Mutable, NonFunctionKeys, Overwrite, Properties, RenderFunction, RenderMode, RendererOptions, ThreeElement, ThreeInstances, TresCamera, _default as TresCanvas, type TresCanvasEmits, type TresCanvasInstance, type TresCanvasProps, TresCatalogue, TresColor, TresColorArray, type TresContext, TresContextWithClock, TresControl, TresEuler, TresInstance, TresLayers, TresLoader, TresLoaderOptions, TresMaterial, TresObject, TresObject3D, TresObjectMap, TresOptions, TresPartialContext, TresPlugin, type TresPointerEvent, TresPrimitive, TresQuaternion, TresRenderer, TresRendererSetupContext, TresScene, TresVector2, TresVector3, TresVector4, UseCameraReturn, _default$1 as UseLoader, UseLoaderReturn, UseRendererManagerReturn, UseRendererOptions, VectorCoordinates, type VectorFlexibleParams, VueProps, WithMathProps, buildGraph, catalogue, plugin as default, disposeObject3D as dispose, extend, isBufferGeometry, isCamera, isClassInstance, isColor, isColorRepresentation, isCopyable, isFog, isGroup, isLayers, isLight, isMaterial, isMesh, isObject3D, isOrthographicCamera, isPerspectiveCamera, isProd, isScene, isTresCamera, isTresInstance, isTresObject, isTresPrimitive, isVectorLike, logError, logMessage, logWarning, normalizeColor, normalizeVectorFlexibleParam, registerTresDevtools, templateCompilerOptions, useCameraManager, useGraph, useLoader, useLoop, useRendererManager, useTres, useTresContext, useTresContextProvider, vDistanceTo, vLightHelper, vLog };
1084
+ export { Args, AssetLoadData, AttachFnType, AttachType, ConstructorRepresentation, DevtoolsMessage, DevtoolsMessageType, DevtoolsMessenger, DevtoolsSubscriber, DisposeType, ElementProps, InstanceProps, LoaderMethods, LoaderProto, LocalState, LoopContext, MathType, Mutable, NonFunctionKeys, Overwrite, Properties, RenderFunction, RenderMode, RendererOptions, ThreeElement, ThreeInstances, TresCamera, _default as TresCanvas, type TresCanvasEmits, type TresCanvasInstance, type TresCanvasProps, TresCatalogue, TresColor, TresColorArray, TresComponents, type TresContext, TresContextWithClock, TresControl, type TresCustomRendererOptions, TresEuler, TresInstance, TresLayers, TresLoader, TresLoaderOptions, TresMaterial, TresObject, TresObject3D, TresObjectMap, TresOptions, TresPartialContext, TresPlugin, type TresPointerEvent, TresPrimitive, TresQuaternion, TresRenderer, TresRendererSetupContext, TresScene, TresVector2, TresVector3, TresVector4, UseCameraReturn, _default$1 as UseLoader, UseLoaderReturn, UseRendererManagerReturn, UseRendererOptions, VectorCoordinates, type VectorFlexibleParams, VueProps, WithMathProps, buildGraph, catalogue, plugin as default, disposeObject3D as dispose, extend, isBufferGeometry, isCamera, isClassInstance, isColor, isColorRepresentation, isCopyable, isFog, isGroup, isLayers, isLight, isMaterial, isMesh, isObject3D, isOrthographicCamera, isPerspectiveCamera, isProd, isScene, isTresCamera, isTresInstance, isTresObject, isTresPrimitive, isVectorLike, logError, logMessage, logWarning, normalizeColor, normalizeVectorFlexibleParam, registerTresDevtools, templateCompilerOptions, useCameraManager, useGraph, useLoader, useLoop, useRendererManager, useTres, useTresContext, useTresContextProvider, vDistanceTo, vLightHelper, vLog };
package/dist/tres.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * name: @tresjs/core
3
- * version: v5.2.1
4
- * (c) 2025
3
+ * version: v5.3.1
4
+ * (c) 2026
5
5
  * description: Declarative ThreeJS using Vue Components
6
6
  * author: Alvaro Saburido <hola@alvarosaburido.dev> (https://github.com/alvarosabu/)
7
7
  */
@@ -14,7 +14,7 @@ import { forwardHtmlEvents, getVoidObject } from "@pmndrs/pointer-events";
14
14
  import { setupDevtoolsPlugin } from "@vue/devtools-api";
15
15
 
16
16
  //#region package.json
17
- var version = "5.2.1";
17
+ var version = "5.3.1";
18
18
 
19
19
  //#endregion
20
20
  //#region src/utils/makeMap.ts
@@ -1072,7 +1072,7 @@ const isSupportedPointerEvent = (event) => supportedPointerEvents.includes(event
1072
1072
 
1073
1073
  //#endregion
1074
1074
  //#region src/core/nodeOps.ts
1075
- const nodeOps = (context) => {
1075
+ const nodeOps = ({ context, options = { primitivePrefix: "" } }) => {
1076
1076
  const scene = context.scene.value;
1077
1077
  function createElement(tag, _isSVG, _anchor, props) {
1078
1078
  if (!props) props = {};
@@ -1081,7 +1081,7 @@ const nodeOps = (context) => {
1081
1081
  if (tag.includes("-")) tag = tag.replace(/-([a-z])/g, (_, c) => c.toUpperCase()).replace(/^[a-z]/, (c) => c.toUpperCase());
1082
1082
  let name = tag.replace("Tres", "");
1083
1083
  let obj;
1084
- if (tag === "primitive") {
1084
+ if (tag === `${options?.primitivePrefix ?? ""}primitive`) {
1085
1085
  if (!isObject(props.object) || isRef(props.object)) logError("Tres primitives need an 'object' prop, whose value is an object or shallowRef<object>");
1086
1086
  name = props.object.type;
1087
1087
  const __tres = {};
@@ -1825,6 +1825,10 @@ var Context_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ define
1825
1825
  type: Boolean,
1826
1826
  required: false
1827
1827
  },
1828
+ customRendererOptions: {
1829
+ type: Object,
1830
+ required: false
1831
+ },
1828
1832
  antialias: {
1829
1833
  type: Boolean,
1830
1834
  required: false
@@ -1967,7 +1971,10 @@ var Context_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ define
1967
1971
  } });
1968
1972
  const mountCustomRenderer = (context$1, empty = false) => {
1969
1973
  const InternalComponent = createInternalComponent(context$1, empty);
1970
- const { render } = createRenderer(nodeOps(context$1));
1974
+ const { render } = createRenderer(nodeOps({
1975
+ context: context$1,
1976
+ options: props.customRendererOptions
1977
+ }));
1971
1978
  render(h(InternalComponent), scene.value);
1972
1979
  };
1973
1980
  const dispose = (context$1, force = false) => {
@@ -2078,6 +2085,10 @@ var TresCanvas_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ def
2078
2085
  required: false,
2079
2086
  default: true
2080
2087
  },
2088
+ customRendererOptions: {
2089
+ type: Object,
2090
+ required: false
2091
+ },
2081
2092
  antialias: {
2082
2093
  type: Boolean,
2083
2094
  required: false,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tresjs/core",
3
3
  "type": "module",
4
- "version": "5.2.1",
4
+ "version": "5.3.1",
5
5
  "description": "Declarative ThreeJS using Vue Components",
6
6
  "author": "Alvaro Saburido <hola@alvarosaburido.dev> (https://github.com/alvarosabu/)",
7
7
  "license": "MIT",
@@ -67,7 +67,7 @@
67
67
  "rollup-plugin-copy": "^3.5.0",
68
68
  "rollup-plugin-visualizer": "^6.0.3",
69
69
  "three": "^0.180.0",
70
- "tsdown": "0.16.1",
70
+ "tsdown": "0.18.3",
71
71
  "typescript": "^5.8.3",
72
72
  "vite": "^7.1.9",
73
73
  "vite-plugin-banner": "^0.8.1",
@@ -76,7 +76,7 @@
76
76
  "vitest": "3.2.4",
77
77
  "vue": "^3.5.22",
78
78
  "vue-demi": "^0.14.10",
79
- "vue-tsc": "^3.1.1",
79
+ "vue-tsc": "^3.2.1",
80
80
  "@tresjs/eslint-config": "1.5.1"
81
81
  },
82
82
  "nx": {
@@ -1,30 +0,0 @@
1
- /**
2
- * name: @tresjs/core
3
- * version: v5.2.1
4
- * (c) 2025
5
- * description: Declarative ThreeJS using Vue Components
6
- * author: Alvaro Saburido <hola@alvarosaburido.dev> (https://github.com/alvarosabu/)
7
- */
8
- //#region rolldown:runtime
9
- var __create = Object.create;
10
- var __defProp = Object.defineProperty;
11
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
12
- var __getOwnPropNames = Object.getOwnPropertyNames;
13
- var __getProtoOf = Object.getPrototypeOf;
14
- var __hasOwnProp = Object.prototype.hasOwnProperty;
15
- var __copyProps = (to, from, except, desc) => {
16
- if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
17
- key = keys[i];
18
- if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
19
- get: ((k) => from[k]).bind(null, key),
20
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
21
- });
22
- }
23
- return to;
24
- };
25
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
- value: mod,
27
- enumerable: true
28
- }) : target, mod));
29
-
30
- //#endregion