This commit is contained in:
Timothy Jaeryang Baek 2025-09-16 12:52:13 -05:00
parent 0f04227c34
commit c8780a7f93

View file

@ -75,7 +75,7 @@
const onSelectGroup = () => { const onSelectGroup = () => {
if (selectedGroupId !== '') { if (selectedGroupId !== '') {
accessControl.read.group_ids = [...accessControl.read.group_ids, selectedGroupId]; accessControl.read.group_ids = [...(accessControl?.read?.group_ids ?? []), selectedGroupId];
selectedGroupId = ''; selectedGroupId = '';
} }
@ -163,7 +163,7 @@
</div> </div>
{#if accessControl !== null} {#if accessControl !== null}
{@const accessGroups = groups.filter((group) => {@const accessGroups = groups.filter((group) =>
accessControl.read.group_ids.includes(group.id) (accessControl?.read?.group_ids ?? []).includes(group.id)
)} )}
<div> <div>
<div class=""> <div class="">
@ -186,7 +186,7 @@
<option class=" text-gray-700" value="" disabled selected <option class=" text-gray-700" value="" disabled selected
>{$i18n.t('Select a group')}</option >{$i18n.t('Select a group')}</option
> >
{#each groups.filter((group) => !accessControl.read.group_ids.includes(group.id)) as group} {#each groups.filter((group) => !(accessControl?.read?.group_ids ?? []).includes(group.id)) as group}
<option class=" text-gray-700" value={group.id}>{group.name}</option> <option class=" text-gray-700" value={group.id}>{group.name}</option>
{/each} {/each}
</select> </select>
@ -228,20 +228,20 @@
type="button" type="button"
on:click={() => { on:click={() => {
if (accessRoles.includes('write')) { if (accessRoles.includes('write')) {
if (accessControl.write.group_ids.includes(group.id)) { if ((accessControl?.write?.group_ids ?? []).includes(group.id)) {
accessControl.write.group_ids = accessControl.write.group_ids.filter( accessControl.write.group_ids = (
(group_id) => group_id !== group.id accessControl?.write?.group_ids ?? []
); ).filter((group_id) => group_id !== group.id);
} else { } else {
accessControl.write.group_ids = [ accessControl.write.group_ids = [
...accessControl.write.group_ids, ...(accessControl?.write?.group_ids ?? []),
group.id group.id
]; ];
} }
} }
}} }}
> >
{#if accessControl.write.group_ids.includes(group.id)} {#if (accessControl?.write?.group_ids ?? []).includes(group.id)}
<Badge type={'success'} content={$i18n.t('Write')} /> <Badge type={'success'} content={$i18n.t('Write')} />
{:else} {:else}
<Badge type={'info'} content={$i18n.t('Read')} /> <Badge type={'info'} content={$i18n.t('Read')} />
@ -252,7 +252,7 @@
class=" rounded-full p-1 hover:bg-gray-100 dark:hover:bg-gray-850 transition" class=" rounded-full p-1 hover:bg-gray-100 dark:hover:bg-gray-850 transition"
type="button" type="button"
on:click={() => { on:click={() => {
accessControl.read.group_ids = accessControl.read.group_ids.filter( accessControl.read.group_ids = (accessControl?.read?.group_ids ?? []).filter(
(id) => id !== group.id (id) => id !== group.id
); );
}} }}