@lobb-js/studio 0.25.0 → 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/components/dataTable/dataTable.svelte +77 -14
  2. package/dist/components/dataTable/dataTable.svelte.d.ts +25 -0
  3. package/dist/components/dataTable/header.svelte +88 -24
  4. package/dist/components/dataTable/header.svelte.d.ts +4 -0
  5. package/dist/components/dataTable/listViewChildren.svelte +106 -0
  6. package/dist/components/dataTable/listViewChildren.svelte.d.ts +9 -0
  7. package/dist/components/dataTable/table.svelte +1 -1
  8. package/dist/components/detailView/create/createManyView.svelte +2 -2
  9. package/dist/components/detailView/update/detailViewChildren.svelte +72 -0
  10. package/dist/components/detailView/update/detailViewChildren.svelte.d.ts +14 -0
  11. package/dist/components/detailView/update/updateDetailView.svelte +6 -3
  12. package/dist/components/routes/collections/collections.svelte +44 -23
  13. package/dist/components/routes/data_model/dataModel.svelte +2 -8
  14. package/dist/components/routes/workflows/workflows.svelte +24 -11
  15. package/dist/components/sidebar/sidebar.svelte +12 -5
  16. package/dist/components/sidebar/sidebar.svelte.d.ts +1 -2
  17. package/dist/components/sidebar/sidebarElements.svelte +50 -75
  18. package/dist/components/sidebar/sidebarElements.svelte.d.ts +10 -3
  19. package/dist/utils.js +2 -1
  20. package/package.json +2 -2
  21. package/src/lib/components/dataTable/dataTable.svelte +77 -14
  22. package/src/lib/components/dataTable/header.svelte +88 -24
  23. package/src/lib/components/dataTable/listViewChildren.svelte +106 -0
  24. package/src/lib/components/dataTable/table.svelte +1 -1
  25. package/src/lib/components/detailView/create/createManyView.svelte +2 -2
  26. package/src/lib/components/detailView/update/detailViewChildren.svelte +72 -0
  27. package/src/lib/components/detailView/update/updateDetailView.svelte +6 -3
  28. package/src/lib/components/routes/collections/collections.svelte +44 -23
  29. package/src/lib/components/routes/data_model/dataModel.svelte +2 -8
  30. package/src/lib/components/routes/workflows/workflows.svelte +24 -11
  31. package/src/lib/components/sidebar/sidebar.svelte +12 -5
  32. package/src/lib/components/sidebar/sidebarElements.svelte +50 -75
  33. package/src/lib/utils.ts +2 -1
  34. package/dist/components/dataTable/childRecords.svelte +0 -142
  35. package/dist/components/dataTable/childRecords.svelte.d.ts +0 -9
  36. package/dist/components/detailView/update/children.svelte +0 -96
  37. package/dist/components/detailView/update/children.svelte.d.ts +0 -7
  38. package/src/lib/components/dataTable/childRecords.svelte +0 -142
  39. package/src/lib/components/detailView/update/children.svelte +0 -96
@@ -1,96 +0,0 @@
1
- <script lang="ts">
2
- import DataTable from "../../../components/dataTable/dataTable.svelte";
3
- import { getStudioContext } from "../../../context";
4
- import { Link, Plus, TableIcon } from "lucide-svelte";
5
- import CreateDetailViewButton from "../create/createDetailViewButton.svelte";
6
- import ExtensionsComponents from "../../../components/extensionsComponents.svelte";
7
- import { getExtensionUtils } from "../../../extensions/extensionUtils";
8
-
9
- const { ctx, lobb } = getStudioContext();
10
-
11
- interface LocalProp {
12
- collectionName: string;
13
- entry: any;
14
- }
15
-
16
- let { collectionName, entry }: LocalProp = $props();
17
-
18
- const childrenRelations = ctx.meta.relations.filter(
19
- (relation) => relation.to.collection === collectionName,
20
- );
21
- const refresh: boolean[] = $state(
22
- new Array(childrenRelations.length).fill(true),
23
- );
24
- </script>
25
-
26
- {#if childrenRelations.length}
27
- <div class="flex flex-col gap-4 border-t p-4">
28
- <div class="flex items-center gap-2">
29
- <Link size="17.5" />
30
- <div>Sub Records</div>
31
- </div>
32
- <div class="flex flex-col gap-4">
33
- {#each childrenRelations as relation, index}
34
- {@const childCollection = relation.from.collection}
35
- {@const childField = relation.from.field}
36
- <ExtensionsComponents
37
- name="detailView.update.subRecords.{childCollection}"
38
- utils={getExtensionUtils(lobb, ctx)}
39
- collectionName={childCollection}
40
- filter={{
41
- [childField]: entry.id,
42
- }}
43
- class="bg-muted/30 border rounded-md overflow-hidden"
44
- >
45
- <div class="border rounded-md overflow-clip">
46
- <div
47
- class="flex items-center justify-between px-2 h-10 bg-muted/30 border-b"
48
- >
49
- <div class="flex-1 flex h-full items-center gap-2">
50
- <TableIcon
51
- class="text-muted-foreground"
52
- size="17.5"
53
- />
54
- <div class="text-sm text-muted-foreground">
55
- {childCollection}
56
- </div>
57
- </div>
58
- <div class="flex gap-2">
59
- <CreateDetailViewButton
60
- variant="ghost"
61
- class="h-7 px-2 font-normal text-xs"
62
- Icon={Plus}
63
- collectionName={childCollection}
64
- onSuccessfullSave={async () => {
65
- refresh[index] = !refresh[index];
66
- }}
67
- >
68
- Create
69
- </CreateDetailViewButton>
70
- </div>
71
- </div>
72
- <div class="max-h-72 overflow-auto rounded-md">
73
- {#key refresh[index]}
74
- <DataTable
75
- collectionName={childCollection}
76
- filter={{
77
- [childField]: entry.id,
78
- }}
79
- unifiedBgColor="bg-muted/30"
80
- showHeader={false}
81
- showFooter={false}
82
- showDelete={true}
83
- tableProps={{
84
- showLastColumnBorder: false,
85
- showLastRowBorder: false,
86
- showCheckboxes: false,
87
- }}
88
- />
89
- {/key}
90
- </div>
91
- </div>
92
- </ExtensionsComponents>
93
- {/each}
94
- </div>
95
- </div>
96
- {/if}