54 lines
No EOL
1.7 KiB
JavaScript
54 lines
No EOL
1.7 KiB
JavaScript
// Central configuration for Ghost Guild Circles
|
|
export const CIRCLES = {
|
|
COMMUNITY: {
|
|
value: 'community',
|
|
label: 'Community Circle',
|
|
description: 'For individuals interested in learning about cooperative principles',
|
|
features: [
|
|
'Game workers curious about co-ops, researchers, industry allies',
|
|
'People exploring alternative work models',
|
|
'Access to community forums and resources'
|
|
]
|
|
},
|
|
FOUNDER: {
|
|
value: 'founder',
|
|
label: 'Founder Circle',
|
|
description: 'For those actively establishing or growing their cooperative studio',
|
|
features: [
|
|
'Has two tracks: Peer Accelerator Prep Track and Indie Track',
|
|
'Teams working toward PA application',
|
|
'Early-stage co-op studios',
|
|
'Studios transitioning to co-op model'
|
|
]
|
|
},
|
|
PRACTITIONER: {
|
|
value: 'practitioner',
|
|
label: 'Practitioner Circle',
|
|
description: 'For Peer Accelerator alumni and experienced studio leaders',
|
|
features: [
|
|
'Those implementing cooperative models',
|
|
'Industry mentors and advisors',
|
|
'Expert-level workshops and mentorship opportunities'
|
|
]
|
|
}
|
|
};
|
|
|
|
// Get all circle options as an array (useful for forms)
|
|
export const getCircleOptions = () => {
|
|
return Object.values(CIRCLES);
|
|
};
|
|
|
|
// Get valid circle values for validation
|
|
export const getValidCircleValues = () => {
|
|
return Object.values(CIRCLES).map(circle => circle.value);
|
|
};
|
|
|
|
// Get circle by value
|
|
export const getCircleByValue = (value) => {
|
|
return Object.values(CIRCLES).find(circle => circle.value === value);
|
|
};
|
|
|
|
// Check if a circle value is valid
|
|
export const isValidCircleValue = (value) => {
|
|
return getValidCircleValues().includes(value);
|
|
}; |