<commit_before>import * as THREE from 'three';

import {extend} from '../utils/index';
import {Loop} from '../extras/Loop';
import {CoreObject} from './CoreObject';
import {deprecate} from '../utils/decorators';

const _set = (x, y, z) => {
  this.x = x;
  this.y = y;
  this.z = z;
};

class Camera extends CoreObject {
  static defaults = {
    helper: false,

    pos: {
      x: 0,
      y: 0,
      z: 0,
      set: _set
    },

    rot: {
      x: 0,
      y: 0,
      z: 0,
      set: _set
    },

    target: {
      x: 0,
      y: 0,
      z: 0,
      set: _set
    }
  };

  helper = null;

  constructor(params, type = 'camera', localWindow = window) {
    super();

    Camera.defaults.camera = {
      fov: 45,
      aspect: localWindow.innerWidth / localWindow.innerHeight,
      near: 1,
      far: 1000,
      left: localWindow.innerWidth / -2,
      right: localWindow.innerWidth / 2,
      top: localWindow.innerHeight / 2,
      bottom: localWindow.innerHeight / -2,
      cubeResolution: 128
    };

    params.useTarget = Boolean(params.target);

    if (params instanceof THREE.Camera) {
      this.params = extend({
        pos: {x: params.position.x, y: params.position.y, z: params.position.z},
        rot: {x: params.rotation.x, y: params.rotation.y, z: params.rotation.z}
      }, World.defaults);
    } else this.params = extend(params, Camera.defaults);

    if (params instanceof THREE.Camera) this.native = params;
    this.type = type;
  }

  wrap(...tags) {
    return new Promise((resolve, reject) => {
      const _native = this.native,
        _params = this.params;

      this.position.set(
        _params.pos.x,
        _params.pos.y,
        _params.pos.z<commit_msg>Fixed typo and failed build<commit_after>import * as THREE from 'three';

import {extend} from '../utils/index';
import {Loop} from '../extras/Loop';
import {CoreObject} from './CoreObject';
import {deprecate} from '../utils/decorators';

const _set = (x, y, z) => {
  this.x = x;
  this.y = y;
  this.z = z;
};

class Camera extends CoreObject {
  static defaults = {
    helper: false,

    pos: {
      x: 0,
      y: 0,
      z: 0,
      set: _set
    },

    rot: {
      x: 0,
      y: 0,
      z: 0,
      set: _set
    },

    target: {
      x: 0,
      y: 0,
      z: 0,
      set: _set
    }
  };

  helper = null;

  constructor(params, type = 'camera', localWindow = window) {
    super();

    Camera.defaults.camera = {
      fov: 45,
      aspect: localWindow.innerWidth / localWindow.innerHeight,
      near: 1,
      far: 1000,
      left: localWindow.innerWidth / -2,
      right: localWindow.innerWidth / 2,
      top: localWindow.innerHeight / 2,
      bottom: localWindow.innerHeight / -2,
      cubeResolution: 128
    };

    params.useTarget = Boolean(params.target);

    if (params instanceof THREE.Camera) {
      this.params = extend({
        pos: {x: params.position.x, y: params.position.y, z: params.position.z},
        rot: {x: params.rotation.x, y: params.rotation.y, z: params.rotation.z}
      }, Camera.defaults);
    } else this.params = extend(params, Camera.defaults);

    if (params instanceof THREE.Camera) this.native = params;
    this.type = type;
  }

  wrap(...tags) {
    return new Promise((resolve, reject) => {
      const _native = this.native,
        _params = this.params;

      this.position.set(
        _params.pos.x,
        _params.pos.y,
        _params.pos.z
{'fraction_non_alphanumeric': 0.14273230410719487, 'fraction_numerical': 0.013399359161083601, 'mean_word_length': 2.096483318304779, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6060420', 'n_tokens_mistral': 1216, 'n_tokens_neox': 1147, 'n_words': 299}