data now syncs in the grid
This commit is contained in:
parent
92c162ea2c
commit
401959d8c8
|
@ -57,13 +57,11 @@
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
const handleSubmit = e => {
|
const handleNewRecord = async () => {
|
||||||
// Send off data here and update to display in grid component
|
data = await fetchData(datasource)
|
||||||
console.log("Submitting:", e.detail)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const handleUpdate = ({ detail }) => {
|
const handleUpdate = ({ detail }) => {
|
||||||
console.log(detail)
|
|
||||||
data[detail.row] = detail.data
|
data[detail.row] = detail.data
|
||||||
updateRecord(detail.data)
|
updateRecord(detail.data)
|
||||||
}
|
}
|
||||||
|
@ -74,11 +72,9 @@
|
||||||
record
|
record
|
||||||
)
|
)
|
||||||
const json = await response.json()
|
const json = await response.json()
|
||||||
console.log(json)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const deleteRecords = async () => {
|
const deleteRecords = async () => {
|
||||||
console.log(_bb.api)
|
|
||||||
const response = await _bb.api.post(`/api/${datasource.name}/records`, {
|
const response = await _bb.api.post(`/api/${datasource.name}/records`, {
|
||||||
records: selectedRows,
|
records: selectedRows,
|
||||||
type: "delete",
|
type: "delete",
|
||||||
|
@ -91,7 +87,7 @@
|
||||||
<div class="container">
|
<div class="container">
|
||||||
{#if dataLoaded}
|
{#if dataLoaded}
|
||||||
<div class="controls">
|
<div class="controls">
|
||||||
<CreateRowButton {_bb} {model} />
|
<CreateRowButton {_bb} {model} on:newRecord={handleNewRecord} />
|
||||||
{#if selectedRows.length > 0}
|
{#if selectedRows.length > 0}
|
||||||
<DeleteButton text small on:click={deleteRecords}>
|
<DeleteButton text small on:click={deleteRecords}>
|
||||||
<Icon name="addrow" />
|
<Icon name="addrow" />
|
||||||
|
|
|
@ -1,7 +1,10 @@
|
||||||
<script>
|
<script>
|
||||||
|
import { createEventDispatcher } from "svelte"
|
||||||
import { DropdownMenu, TextButton as Button, Icon } from "@budibase/bbui"
|
import { DropdownMenu, TextButton as Button, Icon } from "@budibase/bbui"
|
||||||
import Modal from "./Modal.svelte"
|
import Modal from "./Modal.svelte"
|
||||||
|
|
||||||
|
const dispatch = createEventDispatcher()
|
||||||
|
|
||||||
let anchor
|
let anchor
|
||||||
let dropdown
|
let dropdown
|
||||||
|
|
||||||
|
@ -16,7 +19,11 @@
|
||||||
</div>
|
</div>
|
||||||
<DropdownMenu bind:this={dropdown} {anchor} align="left">
|
<DropdownMenu bind:this={dropdown} {anchor} align="left">
|
||||||
<h5>Add New Row</h5>
|
<h5>Add New Row</h5>
|
||||||
<Modal {_bb} {model} onClosed={dropdown.hide} />
|
<Modal
|
||||||
|
{_bb}
|
||||||
|
{model}
|
||||||
|
onClosed={dropdown.hide}
|
||||||
|
on:newRecord={() => dispatch('newRecord')} />
|
||||||
</DropdownMenu>
|
</DropdownMenu>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
<script>
|
<script>
|
||||||
import { onMount } from "svelte"
|
import { onMount, createEventDispatcher } from "svelte"
|
||||||
import { fade } from "svelte/transition"
|
import { fade } from "svelte/transition"
|
||||||
import { Button, Label, DatePicker } from "@budibase/bbui"
|
import { Button, Label, DatePicker } from "@budibase/bbui"
|
||||||
import Dropzone from "../../attachments/Dropzone.svelte"
|
import Dropzone from "../../attachments/Dropzone.svelte"
|
||||||
import debounce from "lodash.debounce"
|
import debounce from "lodash.debounce"
|
||||||
|
const dispatch = createEventDispatcher()
|
||||||
|
|
||||||
const DEFAULTS_FOR_TYPE = {
|
const DEFAULTS_FOR_TYPE = {
|
||||||
string: "",
|
string: "",
|
||||||
|
@ -43,8 +44,6 @@
|
||||||
|
|
||||||
const json = await response.json()
|
const json = await response.json()
|
||||||
|
|
||||||
console.log(json)
|
|
||||||
|
|
||||||
if (response.status === 200) {
|
if (response.status === 200) {
|
||||||
store.update(state => {
|
store.update(state => {
|
||||||
state[model._id] = state[model._id]
|
state[model._id] = state[model._id]
|
||||||
|
@ -60,6 +59,7 @@
|
||||||
record = isNew ? { modelId: model._id } : json
|
record = isNew ? { modelId: model._id } : json
|
||||||
|
|
||||||
onClosed()
|
onClosed()
|
||||||
|
dispatch("newRecord")
|
||||||
}
|
}
|
||||||
|
|
||||||
if (response.status === 400) {
|
if (response.status === 400) {
|
||||||
|
|
Loading…
Reference in New Issue