@bexis2/bexis2-core-ui 0.1.1 → 0.1.3
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/README.md +9 -0
- package/dist/components/Table/Table.svelte +3 -0
- package/dist/components/Table/TableFilter.svelte +1 -1
- package/dist/components/Table/filter.js +1 -1
- package/dist/components/form/MultiSelect.svelte +20 -3
- package/dist/components/form/MultiSelect.svelte.d.ts +4 -4
- package/dist/components/page/menu/Menu.svelte +0 -2
- package/package.json +3 -3
- package/src/lib/components/Table/Table.svelte +4 -0
- package/src/lib/components/Table/TableFilter.svelte +1 -1
- package/src/lib/components/Table/filter.ts +1 -1
- package/src/lib/components/form/MultiSelect.svelte +20 -3
- package/src/lib/components/page/menu/Menu.svelte +1 -2
package/README.md
CHANGED
|
@@ -7,6 +7,9 @@ import {
|
|
|
7
7
|
addColumnFilters,
|
|
8
8
|
addTableFilter
|
|
9
9
|
} from "svelte-headless-table/plugins";
|
|
10
|
+
import { computePosition, autoUpdate, offset, shift, flip, arrow } from "@floating-ui/dom";
|
|
11
|
+
import { storePopup } from "@skeletonlabs/skeleton";
|
|
12
|
+
storePopup.set({ computePosition, autoUpdate, offset, shift, flip, arrow });
|
|
10
13
|
import TableFilter from "./TableFilter.svelte";
|
|
11
14
|
import TablePagination from "./TablePagination.svelte";
|
|
12
15
|
import { columnFilter, searchFilter } from "./filter";
|
|
@@ -115,7 +115,7 @@ if (type === "object") {
|
|
|
115
115
|
</button>
|
|
116
116
|
|
|
117
117
|
<div data-popup={`${popupId}`}>
|
|
118
|
-
<div class="card p-3 absolute grid gap-2 shadow-lg z-10 w-min">
|
|
118
|
+
<div class="card p-3 absolute grid gap-2 shadow-lg z-10 w-min bg-base-100">
|
|
119
119
|
<button
|
|
120
120
|
class="btn variant-filled-primary btn-sm"
|
|
121
121
|
type="button"
|
|
@@ -55,7 +55,7 @@ const dateFilter = (filterOption, filterValue, value) => {
|
|
|
55
55
|
};
|
|
56
56
|
const numericFilter = ({ filterValue, value }) => {
|
|
57
57
|
const [firstFilterOption, firstFilterValue, secondFilterOption, secondFilterValue] = filterValue;
|
|
58
|
-
if (firstFilterValue == null &&
|
|
58
|
+
if (firstFilterValue == null && secondFilterValue == null) {
|
|
59
59
|
return true;
|
|
60
60
|
}
|
|
61
61
|
else if ((firstFilterOption == null || firstFilterValue == null) &&
|
|
@@ -23,6 +23,9 @@
|
|
|
23
23
|
function updateTarget(selection) {
|
|
24
24
|
//diffrent cases
|
|
25
25
|
console.log('------');
|
|
26
|
+
console.log('isComplex',isComplex);
|
|
27
|
+
console.log('isTargetComplex',isTargetComplex);
|
|
28
|
+
console.log('selection',selection);
|
|
26
29
|
|
|
27
30
|
//a) source is complex model is simple
|
|
28
31
|
if (isComplex && !isTargetComplex && isLoaded) {
|
|
@@ -41,8 +44,16 @@
|
|
|
41
44
|
target.push(selection[i].value);
|
|
42
45
|
}
|
|
43
46
|
}
|
|
44
|
-
|
|
45
|
-
|
|
47
|
+
|
|
48
|
+
if (isComplex && isTargetComplex && isLoaded)
|
|
49
|
+
{
|
|
50
|
+
console.log("both complex",selection);
|
|
51
|
+
target = selection;
|
|
52
|
+
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// console.log('selection ' + title, selection);
|
|
56
|
+
// console.log('target ' + title, target);
|
|
46
57
|
}
|
|
47
58
|
|
|
48
59
|
onMount(async () => {
|
|
@@ -55,7 +66,7 @@
|
|
|
55
66
|
// event.detail will be null unless isMulti is true and user has removed a single item
|
|
56
67
|
for (let i in target) {
|
|
57
68
|
let t = target[i];
|
|
58
|
-
items.push(source.find((item) => item
|
|
69
|
+
items.push(source.find((item) => item[itemId] === t));
|
|
59
70
|
}
|
|
60
71
|
|
|
61
72
|
isLoaded = true;
|
|
@@ -65,6 +76,12 @@
|
|
|
65
76
|
//console.log(value);
|
|
66
77
|
}
|
|
67
78
|
|
|
79
|
+
if (isComplex && isTargetComplex)
|
|
80
|
+
{
|
|
81
|
+
value = target
|
|
82
|
+
isLoaded = true;
|
|
83
|
+
}
|
|
84
|
+
|
|
68
85
|
//b) simple liust and simple model
|
|
69
86
|
if (!isComplex && !isTargetComplex) {
|
|
70
87
|
//console.log("source", source);
|
|
@@ -8,10 +8,10 @@ export default class MultiSelect extends SvelteComponentTyped<{
|
|
|
8
8
|
required?: boolean | undefined;
|
|
9
9
|
label?: string | undefined;
|
|
10
10
|
feedback?: any[] | undefined;
|
|
11
|
-
itemId?: string | undefined;
|
|
12
|
-
isMulti?: boolean | undefined;
|
|
13
11
|
isComplex?: boolean | undefined;
|
|
14
12
|
isTargetComplex?: boolean | undefined;
|
|
13
|
+
itemId?: string | undefined;
|
|
14
|
+
isMulti?: boolean | undefined;
|
|
15
15
|
}, {
|
|
16
16
|
[evt: string]: CustomEvent<any>;
|
|
17
17
|
}, {}> {
|
|
@@ -28,10 +28,10 @@ declare const __propDef: {
|
|
|
28
28
|
required?: boolean | undefined;
|
|
29
29
|
label?: string | undefined;
|
|
30
30
|
feedback?: any[] | undefined;
|
|
31
|
-
itemId?: string | undefined;
|
|
32
|
-
isMulti?: boolean | undefined;
|
|
33
31
|
isComplex?: boolean | undefined;
|
|
34
32
|
isTargetComplex?: boolean | undefined;
|
|
33
|
+
itemId?: string | undefined;
|
|
34
|
+
isMulti?: boolean | undefined;
|
|
35
35
|
};
|
|
36
36
|
events: {
|
|
37
37
|
[evt: string]: CustomEvent<any>;
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
<script>import Fa from "svelte-fa/src/fa.svelte";
|
|
2
2
|
import { faCog } from "@fortawesome/free-solid-svg-icons";
|
|
3
3
|
import { onMount } from "svelte";
|
|
4
|
-
import { setApiConfig } from "../../../stores/apistore";
|
|
5
4
|
import { getMenuItems } from "./MenuDataCaller";
|
|
6
5
|
import MenuBar from "./MenuBar.svelte";
|
|
7
6
|
import SettingsBar from "./SettingsBar.svelte";
|
|
8
7
|
let menu;
|
|
9
8
|
onMount(async () => {
|
|
10
|
-
setApiConfig("https://localhost:44345", "david", "123456");
|
|
11
9
|
menu = await getMenuItems();
|
|
12
10
|
});
|
|
13
11
|
</script>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bexis2/bexis2-core-ui",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"private": false,
|
|
5
5
|
"scripts": {
|
|
6
6
|
"dev": "vite dev",
|
|
@@ -39,8 +39,6 @@
|
|
|
39
39
|
"raw-loader": "^4.0.2",
|
|
40
40
|
"svelte": "^3.54.0",
|
|
41
41
|
"svelte-check": "^3.0.1",
|
|
42
|
-
"svelte-fa": "^3.0.3",
|
|
43
|
-
"svelte-headless-table": "^0.17.3",
|
|
44
42
|
"tailwindcss": "^3.3.2",
|
|
45
43
|
"tslib": "^2.4.1",
|
|
46
44
|
"typescript": "^5.0.0",
|
|
@@ -69,7 +67,9 @@
|
|
|
69
67
|
"highlight.js": "^11.8.0",
|
|
70
68
|
"highlightjs-svelte": "^1.0.6",
|
|
71
69
|
"svelte": "^3.54.0",
|
|
70
|
+
"svelte-fa": "^3.0.4",
|
|
72
71
|
"svelte-file-dropzone": "^2.0.1",
|
|
72
|
+
"svelte-headless-table": "^0.17.3",
|
|
73
73
|
"svelte-select": "^5.6.0",
|
|
74
74
|
"vest": "^4.6.11"
|
|
75
75
|
},
|
|
@@ -8,6 +8,10 @@
|
|
|
8
8
|
addColumnFilters,
|
|
9
9
|
addTableFilter
|
|
10
10
|
} from 'svelte-headless-table/plugins';
|
|
11
|
+
import { computePosition, autoUpdate, offset, shift, flip, arrow } from '@floating-ui/dom';
|
|
12
|
+
import { storePopup } from '@skeletonlabs/skeleton';
|
|
13
|
+
|
|
14
|
+
storePopup.set({ computePosition, autoUpdate, offset, shift, flip, arrow });
|
|
11
15
|
|
|
12
16
|
import TableFilter from './TableFilter.svelte';
|
|
13
17
|
import TablePagination from './TablePagination.svelte';
|
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
</button>
|
|
124
124
|
|
|
125
125
|
<div data-popup={`${popupId}`}>
|
|
126
|
-
<div class="card p-3 absolute grid gap-2 shadow-lg z-10 w-min">
|
|
126
|
+
<div class="card p-3 absolute grid gap-2 shadow-lg z-10 w-min bg-base-100">
|
|
127
127
|
<button
|
|
128
128
|
class="btn variant-filled-primary btn-sm"
|
|
129
129
|
type="button"
|
|
@@ -62,7 +62,7 @@ const dateFilter = (filterOption, filterValue, value) => {
|
|
|
62
62
|
|
|
63
63
|
const numericFilter: ColumnFilterFn = ({ filterValue, value }) => {
|
|
64
64
|
const [firstFilterOption, firstFilterValue, secondFilterOption, secondFilterValue] = filterValue;
|
|
65
|
-
if (firstFilterValue == null &&
|
|
65
|
+
if (firstFilterValue == null && secondFilterValue == null) {
|
|
66
66
|
return true;
|
|
67
67
|
} else if (
|
|
68
68
|
(firstFilterOption == null || firstFilterValue == null) &&
|
|
@@ -23,6 +23,9 @@
|
|
|
23
23
|
function updateTarget(selection) {
|
|
24
24
|
//diffrent cases
|
|
25
25
|
console.log('------');
|
|
26
|
+
console.log('isComplex',isComplex);
|
|
27
|
+
console.log('isTargetComplex',isTargetComplex);
|
|
28
|
+
console.log('selection',selection);
|
|
26
29
|
|
|
27
30
|
//a) source is complex model is simple
|
|
28
31
|
if (isComplex && !isTargetComplex && isLoaded) {
|
|
@@ -41,8 +44,16 @@
|
|
|
41
44
|
target.push(selection[i].value);
|
|
42
45
|
}
|
|
43
46
|
}
|
|
44
|
-
|
|
45
|
-
|
|
47
|
+
|
|
48
|
+
if (isComplex && isTargetComplex && isLoaded)
|
|
49
|
+
{
|
|
50
|
+
console.log("both complex",selection);
|
|
51
|
+
target = selection;
|
|
52
|
+
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// console.log('selection ' + title, selection);
|
|
56
|
+
// console.log('target ' + title, target);
|
|
46
57
|
}
|
|
47
58
|
|
|
48
59
|
onMount(async () => {
|
|
@@ -55,7 +66,7 @@
|
|
|
55
66
|
// event.detail will be null unless isMulti is true and user has removed a single item
|
|
56
67
|
for (let i in target) {
|
|
57
68
|
let t = target[i];
|
|
58
|
-
items.push(source.find((item) => item
|
|
69
|
+
items.push(source.find((item) => item[itemId] === t));
|
|
59
70
|
}
|
|
60
71
|
|
|
61
72
|
isLoaded = true;
|
|
@@ -65,6 +76,12 @@
|
|
|
65
76
|
//console.log(value);
|
|
66
77
|
}
|
|
67
78
|
|
|
79
|
+
if (isComplex && isTargetComplex)
|
|
80
|
+
{
|
|
81
|
+
value = target
|
|
82
|
+
isLoaded = true;
|
|
83
|
+
}
|
|
84
|
+
|
|
68
85
|
//b) simple liust and simple model
|
|
69
86
|
if (!isComplex && !isTargetComplex) {
|
|
70
87
|
//console.log("source", source);
|
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
import { onMount } from 'svelte';
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
import { setApiConfig } from '../../../stores/apistore';
|
|
10
9
|
import { getMenuItems} from './MenuDataCaller';
|
|
11
10
|
|
|
12
11
|
import type { Menu } from "./menu";
|
|
@@ -18,7 +17,7 @@
|
|
|
18
17
|
|
|
19
18
|
onMount(async () => {
|
|
20
19
|
|
|
21
|
-
|
|
20
|
+
|
|
22
21
|
|
|
23
22
|
menu = await getMenuItems();
|
|
24
23
|
|