39 lines
1.0 KiB
JavaScript
39 lines
1.0 KiB
JavaScript
|
import {Hooks} from '@flecks/core';
|
||
|
|
||
|
import badPacketsCheck from './packet/bad-packets-check';
|
||
|
import Bundle from './packet/bundle';
|
||
|
import Redirect from './packet/redirect';
|
||
|
import Refresh from './packet/refresh';
|
||
|
|
||
|
export {default as normalize} from './normalize';
|
||
|
export {default as Packet, Packer, ValidationError} from './packet';
|
||
|
|
||
|
export default {
|
||
|
[Hooks]: {
|
||
|
'@flecks/core/config': () => ({
|
||
|
'packets.decorate': ['...'],
|
||
|
}),
|
||
|
'@flecks/core/starting': (flecks) => {
|
||
|
flecks.set('$flecks/socket.packets', flecks.gather(
|
||
|
'@flecks/socket/packets',
|
||
|
{check: badPacketsCheck},
|
||
|
));
|
||
|
},
|
||
|
'@flecks/http/config': async (
|
||
|
req,
|
||
|
{config: {'@flecks/socket': {'packets.decorate': decorators}}},
|
||
|
) => ({
|
||
|
'@flecks/socket': {
|
||
|
'packets.decorate': decorators.filter(
|
||
|
(decorator) => 'server' !== decorator.split('/').pop(),
|
||
|
),
|
||
|
},
|
||
|
}),
|
||
|
'@flecks/socket/packets': (flecks) => ({
|
||
|
Bundle: Bundle(flecks),
|
||
|
Redirect,
|
||
|
Refresh,
|
||
|
}),
|
||
|
},
|
||
|
};
|