refactor: gatherWithLatus
This commit is contained in:
parent
772d1752c7
commit
3153561f50
|
@ -24,6 +24,7 @@
|
|||
"dependencies": {
|
||||
"@avocado/resource": "^2.0.0",
|
||||
"@avocado/traits": "^2.0.0",
|
||||
"@latus/core": "^2.0.0",
|
||||
"debug": "4.3.1",
|
||||
"howler": "2.1.2"
|
||||
},
|
||||
|
|
|
@ -1 +1,12 @@
|
|||
export {default} from './sound';
|
||||
import {gatherWithLatus} from '@latus/core';
|
||||
|
||||
export default {
|
||||
hooks: {
|
||||
'@avocado/resource/resources': gatherWithLatus(
|
||||
require.context('./resources', false, /\.js$/),
|
||||
),
|
||||
'@avocado/traits': gatherWithLatus(
|
||||
require.context('./traits', false, /\.js$/),
|
||||
),
|
||||
},
|
||||
};
|
||||
|
|
|
@ -2,7 +2,7 @@ import {Howl} from 'howler';
|
|||
|
||||
import {JsonResource} from '@avocado/resource';
|
||||
|
||||
export default class Sound extends JsonResource {
|
||||
export default () => class Sound extends JsonResource {
|
||||
|
||||
constructor({interval = 0, volume = 1, sound} = {}) {
|
||||
super();
|
||||
|
@ -45,4 +45,4 @@ export default class Sound extends JsonResource {
|
|||
}
|
||||
}
|
||||
|
||||
}
|
||||
};
|
|
@ -1,8 +1,7 @@
|
|||
import {resource} from '@avocado/resource';
|
||||
import {Trait} from '@avocado/traits';
|
||||
|
||||
import Sound from '../sound';
|
||||
|
||||
export default class Audible extends Trait {
|
||||
export default (latus) => class Audible extends Trait {
|
||||
|
||||
#sounds;
|
||||
|
||||
|
@ -59,6 +58,7 @@ export default class Audible extends Trait {
|
|||
async extendJson(json) {
|
||||
const extended = await super.extendJson(json);
|
||||
if (this.params.sounds && 'client' === process.env.SIDE) {
|
||||
const {fromResourceType: {Sound}} = resource(latus);
|
||||
extended.sounds = Object.fromEntries(
|
||||
await Promise.all(
|
||||
Object.entries(this.params.sounds)
|
||||
|
@ -84,4 +84,4 @@ export default class Audible extends Trait {
|
|||
.reduce((r, key) => ({...r, [key]: key}), {});
|
||||
}
|
||||
|
||||
}
|
||||
};
|
||||
|
|
|
@ -931,7 +931,7 @@
|
|||
minimatch "^3.0.4"
|
||||
strip-json-comments "^3.1.1"
|
||||
|
||||
"@latus/core@2.0.0", "@latus/core@^2.0.0":
|
||||
"@latus/core@2.0.0":
|
||||
version "2.0.0"
|
||||
resolved "https://npm.i12e.cha0s.io/@latus%2fcore/-/core-2.0.0.tgz#f8a860fa8ef52368e25adbef28b9554e4e45bab4"
|
||||
integrity sha512-rZGy5utsb22klB85SG72m2+bc92NzFMDvNbtDEVKqCtVN2DzPDUqDBcqfoFcyN6DMDtG3NhAMxw71dj0JLFZiA==
|
||||
|
@ -940,6 +940,15 @@
|
|||
js-yaml "3.14.0"
|
||||
lodash.flatten "^4.4.0"
|
||||
|
||||
"@latus/core@^2.0.0":
|
||||
version "2.0.0"
|
||||
resolved "https://npm.i12e.cha0s.io/@latus%2fcore/-/core-2.0.0.tgz#b98b3cecd37e11cfecc3dd25c900b34232c98cf9"
|
||||
integrity sha512-mVAuCJJzkyXDZjCcZ97+vuForcZl7lIiaxwqHdm73Fo/CgKoCqNXge96LfJ8ZHx+3ypx5Zz3C2+0em1dvEvFLw==
|
||||
dependencies:
|
||||
debug "4.3.1"
|
||||
js-yaml "3.14.0"
|
||||
lodash.flatten "^4.4.0"
|
||||
|
||||
"@latus/http@2.0.0":
|
||||
version "2.0.0"
|
||||
resolved "https://npm.i12e.cha0s.io/@latus%2fhttp/-/http-2.0.0.tgz#da9bed42d196b6864510b6cd0838cb16319c89c9"
|
||||
|
|
Loading…
Reference in New Issue
Block a user