diff --git a/src/lib/components/drop.svelte b/src/lib/components/drop.svelte new file mode 100644 index 000000000..84486418a --- /dev/null +++ b/src/lib/components/drop.svelte @@ -0,0 +1,114 @@ + + + + + + +
+ +
+ +
+
+ {#if show} + + {/if} +
+ + diff --git a/src/lib/components/dropList.svelte b/src/lib/components/dropList.svelte index 4098110b1..f78139199 100644 --- a/src/lib/components/dropList.svelte +++ b/src/lib/components/dropList.svelte @@ -1,69 +1,17 @@ - - -
+ -
- -
-
- {#if show} +
- {/if} -
- - + + diff --git a/src/lib/components/index.ts b/src/lib/components/index.ts index c07033361..4c5913d7a 100644 --- a/src/lib/components/index.ts +++ b/src/lib/components/index.ts @@ -14,6 +14,7 @@ export { default as List } from './list.svelte'; export { default as ListItem } from './listItem.svelte'; export { default as Empty } from './empty.svelte'; export { default as EmptySearch } from './emptySearch.svelte'; +export { default as Drop } from './drop.svelte'; export { default as DropList } from './dropList.svelte'; export { default as DropListItem } from './dropListItem.svelte'; export { default as DropListLink } from './dropListLink.svelte'; diff --git a/src/lib/components/permissions/row.svelte b/src/lib/components/permissions/row.svelte index 85f95fe58..406813dd0 100644 --- a/src/lib/components/permissions/row.svelte +++ b/src/lib/components/permissions/row.svelte @@ -1,8 +1,33 @@ -
+
{#if role === 'users'}
Users
@@ -11,7 +36,104 @@ {:else if role === 'any'}
Any
{:else} -
{role}
+
{ + data = n; + }) + .finally(() => { + tick().then(() => { + instance.setContent(content.innerHTML); + instance.show(); + }); + }); + } + }}> + {role} +
+
+ {#if data} + {@const isUser = role.startsWith('user')} + {@const isTeam = role.startsWith('team')} + + {:else} + Not found. + {/if} +
{/if}
+ + diff --git a/tests/unit/components/dropList.test.ts b/tests/unit/components/dropList.test.ts index b69993317..96eaa12ad 100644 --- a/tests/unit/components/dropList.test.ts +++ b/tests/unit/components/dropList.test.ts @@ -1,5 +1,4 @@ import '@testing-library/jest-dom'; -import { tick } from 'svelte'; import { render, fireEvent } from '@testing-library/svelte'; import { DropList } from '../../../src/lib/components'; @@ -29,12 +28,3 @@ test('hide drop list on wrapper click', async () => { await fireEvent.click(wrapper); expect(component.show).toStrictEqual(false); }); - -test('hide drop list on list click', async () => { - const { container } = render(DropList, { ...data }); - const dropList = container.querySelector('ul.drop-list'); - - await fireEvent.click(dropList); - await tick(); - expect(dropList).not.toBeInTheDocument(); -});