adds users store and moves some components
This commit is contained in:
parent
555cdcd5c4
commit
0a42bce2c0
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
|
@ -1,5 +1,5 @@
|
|||
<script>
|
||||
import GoogleLogo from "./logos/Google.svelte"
|
||||
import GoogleLogo from "./_logos/Google.svelte"
|
||||
import {
|
||||
Button,
|
||||
Heading,
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
<script>
|
||||
import { Body, Input, Select, ModalContent } from "@budibase/bbui"
|
||||
|
||||
const options = ["Email onboarding", "Basic onboarding"]
|
||||
let selected = options[0]
|
||||
</script>
|
||||
|
||||
<ModalContent
|
||||
size="M"
|
||||
title="Add new user options"
|
||||
confirmText="Add user"
|
||||
cancelText="Cancel"
|
||||
showCloseIcon={false}
|
||||
>
|
||||
<Body noPadding
|
||||
>If you have SMTP configured and an email for the new user, you can use the
|
||||
automated email onboarding flow. Otherwise, use our basic onboarding process
|
||||
with autogenerated passwords.</Body
|
||||
>
|
||||
<Select bind:value={selected} label="Add new user via:" {options} />
|
||||
<Input label="Email" />
|
||||
</ModalContent>
|
|
@ -9,7 +9,22 @@
|
|||
Table,
|
||||
Label,
|
||||
Layout,
|
||||
Modal,
|
||||
ModalContent,
|
||||
} from "@budibase/bbui"
|
||||
import AddUserModal from "./_components/AddUserModal.svelte"
|
||||
import { users } from "stores/portal"
|
||||
|
||||
users.init()
|
||||
|
||||
const schema = {
|
||||
email: {},
|
||||
status: {},
|
||||
// access: {},
|
||||
// group: {}
|
||||
}
|
||||
|
||||
export let modal
|
||||
</script>
|
||||
|
||||
<Layout>
|
||||
|
@ -31,14 +46,22 @@
|
|||
</div>
|
||||
<div class="buttons">
|
||||
<ButtonGroup>
|
||||
<Button secondary>Import users</Button>
|
||||
<Button overBackground>Add user</Button>
|
||||
<Button tooltip="Coming soon." disabled secondary>Import users</Button>
|
||||
<Button overBackground on:click={modal.show}>Add user</Button>
|
||||
</ButtonGroup>
|
||||
</div>
|
||||
<Table schema />
|
||||
<Table
|
||||
{schema}
|
||||
data={$users}
|
||||
allowEditColumns={false}
|
||||
allowEditRows={false}
|
||||
allowSelectRows={false}
|
||||
/>
|
||||
</div>
|
||||
</Layout>
|
||||
|
||||
<Modal bind:this={modal}><AddUserModal /></Modal>
|
||||
|
||||
<style>
|
||||
.users {
|
||||
position: relative;
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
export { organisation } from "./organisation"
|
||||
export { users } from "./users"
|
||||
export { admin } from "./admin"
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
import { writable } from "svelte/store"
|
||||
import api from "builderStore/api"
|
||||
|
||||
export function createUsersStore() {
|
||||
const { subscribe, set } = writable({})
|
||||
|
||||
async function init() {
|
||||
try {
|
||||
const response = await api.get(`/api/admin/users`)
|
||||
const json = await response.json()
|
||||
set(json)
|
||||
} catch (error) {
|
||||
console.log(error)
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
subscribe,
|
||||
// save: async config => {
|
||||
// try {
|
||||
// await api.post("/api/admin/configs", { type: "settings", config })
|
||||
// await init()
|
||||
// return { status: 200 }
|
||||
// } catch (error) {
|
||||
// return { error }
|
||||
// }
|
||||
// },
|
||||
init,
|
||||
}
|
||||
}
|
||||
|
||||
export const users = createUsersStore()
|
Loading…
Reference in New Issue