forked from tsai/budibase
77 changed files with 638 additions and 643 deletions
|
Before Width: | Height: | Size: 349 B After Width: | Height: | Size: 362 B |
|
Before Width: | Height: | Size: 244 B After Width: | Height: | Size: 263 B |
@ -1 +1 @@ |
|||
export { default } from "./ModelDataTable.svelte" |
|||
export { default } from "./ModelDataTable.svelte" |
|||
|
|||
@ -1,6 +1,6 @@ |
|||
export { default as DeleteRecordModal } from "./DeleteRecord.svelte"; |
|||
export { default as CreateEditRecordModal } from "./CreateEditRecord.svelte"; |
|||
export { default as CreateEditModelModal } from "./CreateEditModel.svelte"; |
|||
export { default as CreateEditViewModal } from "./CreateEditView.svelte"; |
|||
export { default as CreateDatabaseModal } from "./CreateDatabase.svelte"; |
|||
export { default as CreateUserModal } from "./CreateUser.svelte"; |
|||
export { default as DeleteRecordModal } from "./DeleteRecord.svelte" |
|||
export { default as CreateEditRecordModal } from "./CreateEditRecord.svelte" |
|||
export { default as CreateEditModelModal } from "./CreateEditModel.svelte" |
|||
export { default as CreateEditViewModal } from "./CreateEditView.svelte" |
|||
export { default as CreateDatabaseModal } from "./CreateDatabase.svelte" |
|||
export { default as CreateUserModal } from "./CreateUser.svelte" |
|||
|
|||
@ -1,52 +1,54 @@ |
|||
import { |
|||
findRoot, |
|||
import { |
|||
findRoot, |
|||
getFlattenedHierarchy, |
|||
fieldReversesReferenceToIndex, |
|||
isRecord |
|||
isRecord, |
|||
} from "./hierarchy" |
|||
import { $ } from "../common" |
|||
import { map, filter, reduce } from "lodash/fp" |
|||
|
|||
export const canDeleteIndex = indexNode => { |
|||
const flatHierarchy = $(indexNode, [ |
|||
findRoot, |
|||
getFlattenedHierarchy |
|||
]) |
|||
const flatHierarchy = $(indexNode, [findRoot, getFlattenedHierarchy]) |
|||
|
|||
const reverseIndexes = $(flatHierarchy,[ |
|||
const reverseIndexes = $(flatHierarchy, [ |
|||
filter(isRecord), |
|||
reduce((obj, r) => { |
|||
for (let field of r.fields) { |
|||
if (fieldReversesReferenceToIndex(indexNode)(field)) { |
|||
obj.push({ ...field, record:r }) |
|||
obj.push({ ...field, record: r }) |
|||
} |
|||
} |
|||
return obj |
|||
},[]), |
|||
map(f => `field "${f.name}" on record "${f.record.name}" uses this index as a reference`) |
|||
}, []), |
|||
map( |
|||
f => |
|||
`field "${f.name}" on record "${f.record.name}" uses this index as a reference` |
|||
), |
|||
]) |
|||
|
|||
const lookupIndexes = $(flatHierarchy,[ |
|||
const lookupIndexes = $(flatHierarchy, [ |
|||
filter(isRecord), |
|||
reduce((obj, r) => { |
|||
for (let field of r.fields) { |
|||
if (field.type === "reference" |
|||
&& field.typeOptions.indexNodeKey === indexNode.nodeKey()) { |
|||
obj.push({ ...field, record:r }) |
|||
if ( |
|||
field.type === "reference" && |
|||
field.typeOptions.indexNodeKey === indexNode.nodeKey() |
|||
) { |
|||
obj.push({ ...field, record: r }) |
|||
} |
|||
} |
|||
return obj |
|||
},[]), |
|||
map(f => `field "${f.name}" on record "${f.record.name}" uses this index as a lookup`) |
|||
}, []), |
|||
map( |
|||
f => |
|||
`field "${f.name}" on record "${f.record.name}" uses this index as a lookup` |
|||
), |
|||
]) |
|||
|
|||
const errors = [ |
|||
...reverseIndexes, |
|||
...lookupIndexes |
|||
] |
|||
const errors = [...reverseIndexes, ...lookupIndexes] |
|||
|
|||
return { |
|||
canDelete: errors.length === 0, |
|||
errors |
|||
errors, |
|||
} |
|||
} |
|||
} |
|||
|
|||
@ -1,54 +1,54 @@ |
|||
import { writable } from "svelte/store" |
|||
|
|||
function createItemsStore(componentOnSelect) { |
|||
const { subscribe, set, update } = writable([]) |
|||
|
|||
function addItem(item) { |
|||
update(items => { |
|||
return [...items, item] |
|||
}) |
|||
if (componentOnSelect) { |
|||
componentOnSelect() |
|||
} |
|||
const { subscribe, set, update } = writable([]) |
|||
|
|||
function addItem(item) { |
|||
update(items => { |
|||
return [...items, item] |
|||
}) |
|||
if (componentOnSelect) { |
|||
componentOnSelect() |
|||
} |
|||
} |
|||
|
|||
function addSingleItem(item) { |
|||
set([item]) |
|||
if (componentOnSelect) { |
|||
componentOnSelect(); |
|||
} |
|||
function addSingleItem(item) { |
|||
set([item]) |
|||
if (componentOnSelect) { |
|||
componentOnSelect() |
|||
} |
|||
|
|||
function removeItem(itemId) { |
|||
update(items => { |
|||
let index = getItemIdx(items, itemId) |
|||
items.splice(index, 1); |
|||
return items; |
|||
}) |
|||
if (componentOnSelect) { |
|||
componentOnSelect(); |
|||
} |
|||
} |
|||
|
|||
function clearItems() { |
|||
set([]); |
|||
if (componentOnSelect) { |
|||
componentOnSelect(); |
|||
} |
|||
} |
|||
|
|||
function getItemIdx(items, itemId) { |
|||
return items.findIndex(i => i && i._id === itemId); |
|||
} |
|||
|
|||
function removeItem(itemId) { |
|||
update(items => { |
|||
let index = getItemIdx(items, itemId) |
|||
items.splice(index, 1) |
|||
return items |
|||
}) |
|||
if (componentOnSelect) { |
|||
componentOnSelect() |
|||
} |
|||
} |
|||
|
|||
return { |
|||
subscribe, |
|||
addItem, |
|||
addSingleItem, |
|||
removeItem, |
|||
clearItems, |
|||
getItemIdx |
|||
function clearItems() { |
|||
set([]) |
|||
if (componentOnSelect) { |
|||
componentOnSelect() |
|||
} |
|||
} |
|||
|
|||
function getItemIdx(items, itemId) { |
|||
return items.findIndex(i => i && i._id === itemId) |
|||
} |
|||
|
|||
return { |
|||
subscribe, |
|||
addItem, |
|||
addSingleItem, |
|||
removeItem, |
|||
clearItems, |
|||
getItemIdx, |
|||
} |
|||
} |
|||
|
|||
export default createItemsStore |
|||
|
|||
@ -1,2 +1,2 @@ |
|||
import "./_style.scss"; |
|||
export { default as DatePicker } from "./DatePicker.svelte"; |
|||
import "./_style.scss" |
|||
export { default as DatePicker } from "./DatePicker.svelte" |
|||
|
|||
@ -1,2 +1,2 @@ |
|||
import "./_style.scss"; |
|||
export { default as IconButton } from "./IconButton.svelte"; |
|||
import "./_style.scss" |
|||
export { default as IconButton } from "./IconButton.svelte" |
|||
|
|||
@ -1,3 +1,3 @@ |
|||
import "./_style.scss" |
|||
export { default as HelperText } from "./HelperText.svelte" |
|||
export { default as Select } from "./Select.svelte"; |
|||
export { default as Select } from "./Select.svelte" |
|||
|
|||
@ -1,2 +1,2 @@ |
|||
import "./_style.scss" |
|||
export {default as Slider} from "./Slider.svelte" |
|||
export { default as Slider } from "./Slider.svelte" |
|||
|
|||
@ -1,2 +1,2 @@ |
|||
import "./_style.scss" |
|||
export { default as Switch } from "./Switch.svelte" |
|||
export { default as Switch } from "./Switch.svelte" |
|||
|
|||
Loading…
Reference in new issue