Changeset e27b8db in Klonkt for src/services/guardianship
- Timestamp:
- 07/29/2026 10:04:36 AM (6 weeks ago)
- Branches:
- main
- Children:
- 329873e
- Parents:
- 88d7c8f
- Location:
- src/services/guardianship
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
src/services/guardianship/gated.js
r88d7c8f re27b8db 56 56 57 57 /** The column a feature maps onto. Unknown features are refused, not guessed. */ 58 const FEATURES = { 'shaer:externalEmbeds': 'external_embeds' }; 58 const FEATURES = { 59 'shaer:externalEmbeds': 'external_embeds', 60 'shaer:externalPlayback': 'external_playback', 61 }; 59 62 export function featureColumn(feature) { 60 63 return Object.prototype.hasOwnProperty.call(FEATURES, feature) ? FEATURES[feature] : null; -
src/services/guardianship/index.js
r88d7c8f re27b8db 16 16 */ 17 17 export { SHAER_CONTEXT, GUARDIAN_RELATIONSHIP, GUARDIAN_RELATIONSHIP_COMPACT, isGuardianRelationship } from './context.js'; 18 export { helpRequestProps, isHelpRequest, waveProps, isWave, awayProps, hasGuardiansProps, objectHasGuardians, externalEmbedsAllowed } from './notes.js';18 export { helpRequestProps, isHelpRequest, waveProps, isWave, awayProps, hasGuardiansProps, objectHasGuardians, externalEmbedsAllowed, externalPlaybackAllowed } from './notes.js'; 19 19 export { wireDelivery, c2sVisibility, deliverDirectNote } from './delivery.js'; 20 20 export { wireHandshake, handleOutbox as handleGuardianshipOutbox, handleInbox as handleGuardianshipInbox, parseRelationship, parseUndoRelationship, endGuardianship } from './handshake.js'; -
src/services/guardianship/notes.js
r88d7c8f re27b8db 30 30 */ 31 31 export function externalEmbedsAllowed(setting, isWard) { 32 if (setting === 0 || setting === 1) return setting === 1; 33 return !isWard; 34 } 35 36 /** 37 * May a player run INSIDE the app/page for this account? The heavier sibling 38 * of the setting above, and deliberately separate: seeing that a video exists 39 * is not the same decision as handing the screen to a third party's player, 40 * with its engine, its end-screen and its next-video machine. Same shape, same 41 * default (off for a ward), and it only ever matters once embeds are allowed: 42 * you cannot play what you may not see. 43 */ 44 export function externalPlaybackAllowed(setting, isWard) { 32 45 if (setting === 0 || setting === 1) return setting === 1; 33 46 return !isWard; … … 74 87 } 75 88 76 export default { helpRequestProps, isHelpRequest, waveProps, isWave, awayProps, hasGuardiansProps, objectHasGuardians, externalEmbedsAllowed };89 export default { helpRequestProps, isHelpRequest, waveProps, isWave, awayProps, hasGuardiansProps, objectHasGuardians, externalEmbedsAllowed, externalPlaybackAllowed };
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)