mountain-ui 1.0.36 → 1.0.38
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.
- package/index.d.ts +5 -5
- package/index.js +5 -5
- package/package.json +1 -1
- package/src/lib/registry/entityRegistry/components/EntityForm.svelte +1 -0
- package/src/lib/registry/entityRegistry/registry.svelte.js +17 -0
- package/src/lib/registry/fieldTypeRegistry/fieldTypes/Lines/Input.svelte +1 -0
- package/src/lib/registry/fieldTypeRegistry/fieldTypes/Link/Input/Input.svelte +17 -1
- package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDate/View.svelte +1 -1
- package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeDatetime/View.svelte +1 -1
- package/src/lib/registry/fieldTypeRegistry/fieldTypes/time/TimeUpdatedAt/View.svelte +1 -1
- package/src/lib/registry/projectRegistry/components/ProjectButton.svelte +14 -0
- package/src/lib/registry/projectRegistry/components/ProjectCard.svelte +43 -0
- package/src/lib/registry/projectRegistry/components/ProjectDropdown.svelte +117 -0
- package/src/lib/registry/projectRegistry/createProject.js +17 -0
- package/src/lib/registry/projectRegistry/registry.svelte.js +50 -0
- package/src/lib/registry/viewEntriesProfilRegistery/components/CreateViewEntriesProfilDialog.svelte +17 -0
- package/src/lib/registry/viewEntriesProfilRegistery/components/ViewEntriesProfilButton.svelte +51 -0
- package/src/lib/registry/viewEntriesProfilRegistery/components/ViewEntriesProfilComponent.svelte +32 -0
- package/src/lib/registry/viewEntriesProfilRegistery/components/ViewEntriesProfilDropdown.svelte +60 -0
- package/src/lib/registry/viewEntriesProfilRegistery/createViewEntriesProfil.js +15 -0
- package/src/lib/registry/viewEntriesProfilRegistery/registerDefaultViewEntriesProfils.js +13 -0
- package/src/lib/registry/viewEntriesProfilRegistery/registry.svelte.js +48 -0
- package/src/lib/registry/{viewTypeRegistry/components/ViewTypeButton.svelte → viewEntriesTypeRegistry/components/ViewEntriesTypeButton.svelte} +5 -4
- package/src/lib/registry/{viewTypeRegistry/components/ViewTypeComponent.svelte → viewEntriesTypeRegistry/components/ViewEntriesTypeComponent.svelte} +4 -4
- package/src/lib/registry/viewEntriesTypeRegistry/components/ViewEntriesTypeDropdown.svelte +32 -0
- package/src/lib/registry/viewEntriesTypeRegistry/components/ViewEntriesTypeIcon.svelte +9 -0
- package/src/lib/registry/viewEntriesTypeRegistry/createViewEntriesType.js +17 -0
- package/src/lib/registry/viewEntriesTypeRegistry/registerDefaultViewEntriesTypes.js +7 -0
- package/src/lib/registry/viewEntriesTypeRegistry/registry.svelte.js +44 -0
- package/src/lib/registry/{viewTypeRegistry/viewTypes → viewEntriesTypeRegistry/viewEntriesTypes}/Table/component/StructureTable.svelte +11 -4
- package/src/lib/registry/viewEntriesTypeRegistry/viewEntriesTypes/Table/index.js +14 -0
- package/src/routes/+layout.svelte +613 -598
- package/src/routes/+page.svelte +3 -3
- package/src/routes/exemple/+layout.svelte +44 -0
- package/src/routes/exemple/+page.svelte +0 -0
- package/src/routes/exemple/[project_normalized_name]/+layout.svelte +100 -0
- package/src/routes/exemple/[project_normalized_name]/[entity_slug]/+layout.svelte +44 -0
- package/src/routes/exemple/[project_normalized_name]/[entity_slug]/+page.svelte +182 -0
- package/src/routes/exemple/[project_normalized_name]/[entity_slug]/[entry_id]/+page.svelte +25 -0
- package/src/routes/exemple/[project_normalized_name]/[entity_slug]/create/+page.svelte +45 -0
- package/src/routes/exemple/[project_normalized_name]/home/+page.svelte +1 -0
- package/src/lib/registry/viewTypeRegistry/createViewType.js +0 -17
- package/src/lib/registry/viewTypeRegistry/registerDefaultViewTypes.js +0 -7
- package/src/lib/registry/viewTypeRegistry/registry.svelte.js +0 -44
- package/src/lib/registry/viewTypeRegistry/viewTypes/Table/component/Component copy.svelte +0 -11
- package/src/lib/registry/viewTypeRegistry/viewTypes/Table/index.js +0 -14
- /package/src/lib/registry/{viewTypeRegistry/viewTypes → viewEntriesTypeRegistry/viewEntriesTypes}/Table/Icon.svelte +0 -0
- /package/src/lib/registry/{viewTypeRegistry/viewTypes → viewEntriesTypeRegistry/viewEntriesTypes}/Table/component/Component.svelte +0 -0
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
<script>
|
|
2
2
|
import { Button, RotativeLoader } from 'hamzus-ui';
|
|
3
|
-
import {
|
|
3
|
+
import { viewEntriesTypeRegistry } from '../registry.svelte';
|
|
4
4
|
|
|
5
5
|
let { type, ...props } = $props();
|
|
6
6
|
|
|
7
|
-
const viewType =
|
|
7
|
+
const viewType = $derived(viewEntriesTypeRegistry.get(type));
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
const ViewTypeComponent = $derived(viewType?.components?.component ?? null)
|
|
10
10
|
|
|
11
11
|
</script>
|
|
12
12
|
|
|
13
13
|
{#if viewType}
|
|
14
|
-
<
|
|
14
|
+
<ViewTypeComponent {...props}><slot name="actions" slot="actions"/></ViewTypeComponent>
|
|
15
15
|
{:else}
|
|
16
16
|
<div class="loader">
|
|
17
17
|
<RotativeLoader></RotativeLoader>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
<script>
|
|
2
|
+
import { Button, DropdownMenu } from 'hamzus-ui';
|
|
3
|
+
import { viewEntriesTypeRegistry } from '../registry.svelte';
|
|
4
|
+
import ViewTypeButton from './ViewEntriesTypeButton.svelte';
|
|
5
|
+
|
|
6
|
+
let { onChange = (type) => {}, type = null } = $props();
|
|
7
|
+
|
|
8
|
+
const viewTypes = viewEntriesTypeRegistry.getAll();
|
|
9
|
+
</script>
|
|
10
|
+
|
|
11
|
+
<DropdownMenu.Root direction="bottom">
|
|
12
|
+
<DropdownMenu.Trigger slot="trigger">
|
|
13
|
+
{#if type !== null}
|
|
14
|
+
<ViewTypeButton variant="secondary" {type}></ViewTypeButton>
|
|
15
|
+
{:else}
|
|
16
|
+
<Button variant="secondary" style="width:100%">
|
|
17
|
+
<h5>selectionner un type de vue</h5>
|
|
18
|
+
</Button>
|
|
19
|
+
{/if}
|
|
20
|
+
</DropdownMenu.Trigger>
|
|
21
|
+
<DropdownMenu.Content slot="content" width="250px">
|
|
22
|
+
{#each $viewTypes as viewType}
|
|
23
|
+
<ViewTypeButton
|
|
24
|
+
variant={viewType.type === type ? 'secondary' : 'ghost'}
|
|
25
|
+
onClick={() => {
|
|
26
|
+
onChange(viewType.type);
|
|
27
|
+
}}
|
|
28
|
+
type={viewType.type}
|
|
29
|
+
></ViewTypeButton>
|
|
30
|
+
{/each}
|
|
31
|
+
</DropdownMenu.Content>
|
|
32
|
+
</DropdownMenu.Root>
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export function createViewEntriesType(config = {}) {
|
|
2
|
+
const viewEntriesType = {
|
|
3
|
+
type:"",
|
|
4
|
+
name:"",
|
|
5
|
+
description:"",
|
|
6
|
+
components : {
|
|
7
|
+
component:null,
|
|
8
|
+
icon:null,
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
Object.assign(viewEntriesType, config);
|
|
13
|
+
|
|
14
|
+
// viewEntriesType.get = () => "test";
|
|
15
|
+
|
|
16
|
+
return viewEntriesType;
|
|
17
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { writable, derived, get } from 'svelte/store';
|
|
2
|
+
|
|
3
|
+
function createViewEntriesTypeRegistry() {
|
|
4
|
+
const store = writable({});
|
|
5
|
+
|
|
6
|
+
const all = derived(store, ($viewEntriesTypes) => Object.values($viewEntriesTypes));
|
|
7
|
+
|
|
8
|
+
return {
|
|
9
|
+
subscribe: store.subscribe,
|
|
10
|
+
|
|
11
|
+
register(viewEntriesType) {
|
|
12
|
+
store.update((viewEntriesTypes) => ({
|
|
13
|
+
...viewEntriesTypes,
|
|
14
|
+
[viewEntriesType.type]: viewEntriesType
|
|
15
|
+
}));
|
|
16
|
+
},
|
|
17
|
+
|
|
18
|
+
unregister(type) {
|
|
19
|
+
store.update((viewEntriesTypes) => {
|
|
20
|
+
const copy = { ...viewEntriesTypes };
|
|
21
|
+
|
|
22
|
+
delete copy[type];
|
|
23
|
+
|
|
24
|
+
return copy;
|
|
25
|
+
});
|
|
26
|
+
},
|
|
27
|
+
|
|
28
|
+
get(type) {
|
|
29
|
+
return get(store)[type];
|
|
30
|
+
},
|
|
31
|
+
|
|
32
|
+
select(type) {
|
|
33
|
+
return derived(store, ($viewEntriesTypes) => $viewEntriesTypes[type]);
|
|
34
|
+
},
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
getAll() {
|
|
39
|
+
return all;
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export const viewEntriesTypeRegistry = createViewEntriesTypeRegistry();
|
|
@@ -11,16 +11,19 @@
|
|
|
11
11
|
entityId = null,
|
|
12
12
|
path = '/get-all-entries',
|
|
13
13
|
data = {},
|
|
14
|
+
onClick = (rowData)=>{},
|
|
14
15
|
slug = null,
|
|
15
16
|
onChange = () => {},
|
|
17
|
+
onChangeProps = (newProps) => {},
|
|
16
18
|
invisibleFilters = {},
|
|
17
19
|
structureColumns = [],
|
|
20
|
+
defaultFilters = {},
|
|
18
21
|
defaultColumns = {},
|
|
19
22
|
defaultProps = {},
|
|
20
23
|
...props
|
|
21
24
|
} = $props();
|
|
22
25
|
|
|
23
|
-
const entity = entityRegistry.select(entityId)
|
|
26
|
+
const entity = $derived(entityRegistry.select(entityId))
|
|
24
27
|
|
|
25
28
|
let error = $state(null);
|
|
26
29
|
|
|
@@ -33,6 +36,8 @@
|
|
|
33
36
|
});
|
|
34
37
|
|
|
35
38
|
onMount(() => {
|
|
39
|
+
console.log();
|
|
40
|
+
|
|
36
41
|
mounted = true;
|
|
37
42
|
getColumnsFromStructureColumns($entity);
|
|
38
43
|
});
|
|
@@ -203,11 +208,13 @@
|
|
|
203
208
|
defaultFilters: defaultFilters,
|
|
204
209
|
defaultColumns: defaultColumns
|
|
205
210
|
};
|
|
211
|
+
|
|
212
|
+
onChangeProps(defaultProps)
|
|
206
213
|
}
|
|
207
214
|
|
|
208
|
-
function
|
|
215
|
+
function handleClick(rowData) {
|
|
209
216
|
// rediriger vers
|
|
210
|
-
|
|
217
|
+
onClick(rowData)
|
|
211
218
|
}
|
|
212
219
|
</script>
|
|
213
220
|
|
|
@@ -250,7 +257,7 @@
|
|
|
250
257
|
<p>Impossible de récuperer l'entrée !</p>
|
|
251
258
|
</div>
|
|
252
259
|
{:else if columns.length > 0}
|
|
253
|
-
<TableV2.Root {getRows} onChange={handleChange} {
|
|
260
|
+
<TableV2.Root {getRows} onChange={handleChange} onClick={handleClick} {columns} {...props} filters={defaultFilters}>
|
|
254
261
|
<TableV2.ActionsBar slot="actions-bar"
|
|
255
262
|
><slot name="actions" slot="actions" /></TableV2.ActionsBar
|
|
256
263
|
>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { createViewEntriesType } from '../../createViewEntriesType';
|
|
2
|
+
|
|
3
|
+
import Icon from './Icon.svelte'
|
|
4
|
+
import Component from './component/Component.svelte'
|
|
5
|
+
|
|
6
|
+
export default createViewEntriesType({
|
|
7
|
+
type: "table",
|
|
8
|
+
name: "Tableau",
|
|
9
|
+
description: "",
|
|
10
|
+
components: {
|
|
11
|
+
component: Component,
|
|
12
|
+
icon: Icon,
|
|
13
|
+
},
|
|
14
|
+
});
|