Files
pearcord-platform/mixins/json-export/member-json-mixin.js
T
Raven ScottandCursor a5dba86570 refactor(platform): organize mixins into category directories
Move 136 prototype mixins under mixins/domain, json-export, and
runtime/* so the package root stays navigable. Manifest assign order
is unchanged; apply-platform-mixins and runtime registry paths updated.

Co-authored-by: Cursor <[email protected]>
2026-06-03 17:42:26 -04:00

35 lines
1.3 KiB
JavaScript

'use strict'
const { createJsonExportDualHealMixin } = require('pearcord-json-export-mixin')
const memberJsonMixin = createJsonExportDualHealMixin({
gossipEntries: [
{ method: '_shouldGossipMemberRosterJson', keysField: '_memberRosterRegistryJsonGossipKeys', initMethod: '_initMemberRosterJsonMixinState' },
{ method: '_shouldGossipModerationTimeoutExportJson', gossipHashPrefix: 'effective:', keysField: '_moderationTimeoutRegistryJsonGossipKeys', initMethod: '_initModerationTimeoutJsonMixinState' },
],
heals: [
{
watermarkField: '_memberJsonHealWatermark',
shouldGossipMethod: '_shouldGossipMemberRosterJson',
healMethod: '_healMemberRosterExportCursorOnPartition',
spanKind: 'member.json',
healContext: 'heal.roster',
countField: 'guildMemberJsonCount',
bridgeKind: 'member.json',
listExportsMethod: 'listMemberRosterJsonExports'
},
{
watermarkField: '_moderationTimeoutJsonHealWatermark',
shouldGossipMethod: '_shouldGossipModerationTimeoutExportJson',
healMethod: '_healModerationTimeoutExportCursorOnPartition',
spanKind: 'member.json',
healContext: 'heal.timeout',
countField: 'guildMemberJsonCount',
bridgeKind: 'member.json',
listExportsMethod: 'listModerationTimeoutExportJsonExports'
}
]
})
module.exports = { memberJsonMixin }