@bexis2/bexis2-core-ui 0.1.13 → 0.2.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 (77) hide show
  1. package/README.md +11 -5
  2. package/dist/components/file/FileUploader.svelte.d.ts +2 -2
  3. package/dist/components/form/CheckboxKvPList.svelte +3 -1
  4. package/dist/components/form/CheckboxKvPList.svelte.d.ts +2 -0
  5. package/dist/components/form/DateInput.svelte +2 -1
  6. package/dist/components/form/DateInput.svelte.d.ts +1 -0
  7. package/dist/components/form/DropdownKvP.svelte +2 -1
  8. package/dist/components/form/DropdownKvP.svelte.d.ts +2 -0
  9. package/dist/components/form/InputContainer.svelte +16 -2
  10. package/dist/components/form/InputContainer.svelte.d.ts +2 -0
  11. package/dist/components/form/MultiSelect.svelte +5 -3
  12. package/dist/components/form/MultiSelect.svelte.d.ts +2 -0
  13. package/dist/components/form/NumberInput.svelte +3 -1
  14. package/dist/components/form/NumberInput.svelte.d.ts +1 -0
  15. package/dist/components/form/TextArea.svelte +14 -13
  16. package/dist/components/form/TextArea.svelte.d.ts +1 -0
  17. package/dist/components/form/TextInput.svelte +4 -1
  18. package/dist/components/form/TextInput.svelte.d.ts +1 -0
  19. package/dist/components/page/Help.svelte +38 -0
  20. package/dist/components/page/Help.svelte.d.ts +23 -0
  21. package/dist/components/page/Page.svelte +43 -9
  22. package/dist/components/page/Page.svelte.d.ts +3 -2
  23. package/dist/components/page/Spinner.svelte +2 -2
  24. package/dist/components/page/Spinner.svelte.d.ts +2 -2
  25. package/dist/components/page/breadcrumb/Breadcrumb.svelte +32 -0
  26. package/dist/components/page/breadcrumb/Breadcrumb.svelte.d.ts +16 -0
  27. package/dist/components/page/menu/Menu.svelte +14 -12
  28. package/dist/components/page/menu/MenuBar.svelte +0 -1
  29. package/dist/components/page/menu/MenuItem.svelte +9 -14
  30. package/dist/components/page/menu/MenuItem.svelte.d.ts +0 -1
  31. package/dist/components/page/menu/MenuSublist.svelte +35 -0
  32. package/dist/components/page/menu/MenuSublist.svelte.d.ts +18 -0
  33. package/dist/components/page/menu/SettingsBar.svelte +14 -32
  34. package/dist/index.d.ts +3 -3
  35. package/dist/index.js +2 -2
  36. package/dist/models/Enums.d.ts +1 -1
  37. package/dist/models/Enums.js +6 -6
  38. package/dist/models/Models.d.ts +20 -10
  39. package/dist/models/Models.js +1 -0
  40. package/dist/models/Page.js +16 -0
  41. package/dist/services/Api.js +1 -1
  42. package/dist/services/BaseCaller.d.ts +1 -0
  43. package/dist/services/BaseCaller.js +12 -0
  44. package/dist/stores/pageStores.d.ts +25 -0
  45. package/dist/stores/pageStores.js +112 -0
  46. package/package.json +1 -1
  47. package/src/lib/components/file/FileUploader.svelte +4 -4
  48. package/src/lib/components/form/CheckboxKvPList.svelte +3 -1
  49. package/src/lib/components/form/DateInput.svelte +3 -1
  50. package/src/lib/components/form/DropdownKvP.svelte +2 -1
  51. package/src/lib/components/form/InputContainer.svelte +26 -1
  52. package/src/lib/components/form/MultiSelect.svelte +5 -3
  53. package/src/lib/components/form/NumberInput.svelte +5 -1
  54. package/src/lib/components/form/TextArea.svelte +27 -25
  55. package/src/lib/components/form/TextInput.svelte +4 -2
  56. package/src/lib/components/page/Help.svelte +43 -0
  57. package/src/lib/components/page/Page.svelte +58 -10
  58. package/src/lib/components/page/Spinner.svelte +2 -2
  59. package/src/lib/components/page/breadcrumb/Breadcrumb.svelte +43 -0
  60. package/src/lib/components/page/menu/Menu.svelte +18 -16
  61. package/src/lib/components/page/menu/MenuBar.svelte +1 -1
  62. package/src/lib/components/page/menu/MenuItem.svelte +15 -15
  63. package/src/lib/components/page/menu/MenuSublist.svelte +48 -0
  64. package/src/lib/components/page/menu/SettingsBar.svelte +39 -60
  65. package/src/lib/index.ts +8 -8
  66. package/src/lib/models/Enums.ts +1 -1
  67. package/src/lib/models/Models.ts +23 -10
  68. package/src/lib/models/Page.ts +41 -0
  69. package/src/lib/services/Api.ts +1 -1
  70. package/src/lib/services/BaseCaller.js +12 -0
  71. package/src/lib/stores/pageStores.ts +135 -0
  72. package/dist/components/page/menu/menu.d.ts +0 -21
  73. package/dist/components/page/menu/menu.js +0 -1
  74. package/src/lib/components/page/menu/menu.ts +0 -23
  75. /package/dist/stores/{apistore.d.ts → apiStores.d.ts} +0 -0
  76. /package/dist/stores/{apistore.js → apiStores.js} +0 -0
  77. /package/src/lib/stores/{apistore.ts → apiStores.ts} +0 -0
@@ -1,11 +1,12 @@
1
1
  <script>import { popup } from "@skeletonlabs/skeleton";
2
- import { ListBox, ListBoxItem } from "@skeletonlabs/skeleton";
2
+ import MenuSublist from "./MenuSublist.svelte";
3
+ import { goTo } from "../../../services/BaseCaller";
3
4
  export let menubarItem;
4
5
  export let comboboxValue;
5
- let radomNumber = Math.floor(Math.random() * 100).toString();
6
+ let id = Math.floor(Math.random() * 100).toString();
6
7
  let popupCombobox = {
7
8
  event: "click",
8
- target: radomNumber,
9
+ target: id,
9
10
  placement: "bottom",
10
11
  // Close the popup when the item is clicked
11
12
  closeQuery: ".listbox-item"
@@ -13,24 +14,18 @@ let popupCombobox = {
13
14
  </script>
14
15
  {#if menubarItem.Items.length<1}
15
16
 
16
- <button class="flex items-center gap-x-1 text-xl font-semibold leading-6 text-gray-500" use:popup={popupCombobox}>
17
+ <button use:popup={popupCombobox} on:click={()=> goTo(menubarItem.Url)}>
17
18
  <span class="capitalize">{comboboxValue ?? menubarItem.Title}</span>
18
-
19
19
  </button>
20
20
 
21
21
  {:else}
22
- <button class="flex items-center gap-x-1 text-xl font-semibold leading-6 text-gray-00" use:popup={popupCombobox}>
22
+
23
+
24
+ <button class="flex items-center gap-x-1 " use:popup={popupCombobox}>
23
25
  <span class="capitalize">{menubarItem.Title}</span>
24
26
  <div class="before:content-['▾']"></div>
25
27
  </button>
26
- <div class="card w-48 shadow-xl py-2" data-popup={radomNumber}>
27
-
28
- <ListBox rounded="rounded-none">
29
- {#each menubarItem.Items as item}
30
28
 
31
- <ListBoxItem class="bg-white text-gray-900 py-1 text-sm" bind:group={item.Title} name="medium" value={item.Title}><a class="bg-white text-gray-900 py-1 text-sm" href={item.Url}>{item.Title}</a></ListBoxItem>
32
- {/each}
33
- </ListBox>
34
- </div>
29
+ <MenuSublist {id} items={menubarItem.Items} />
35
30
 
36
31
  {/if}
@@ -1,5 +1,4 @@
1
1
  import { SvelteComponentTyped } from "svelte";
2
- import type { MenuItem } from "./menu";
3
2
  declare const __propDef: {
4
3
  props: {
5
4
  menubarItem: MenuItem;
@@ -0,0 +1,35 @@
1
+ <script>import { ListBox, ListBoxItem } from "@skeletonlabs/skeleton";
2
+ import { goTo } from "../../../services/BaseCaller";
3
+ export let id;
4
+ export let items;
5
+ let lastModule = "";
6
+ let first = true;
7
+ function isNewModule(module) {
8
+ if (module === lastModule) {
9
+ return false;
10
+ } else {
11
+ lastModule = module;
12
+ if (first) {
13
+ first = false;
14
+ return false;
15
+ }
16
+ return true;
17
+ }
18
+ }
19
+ </script>
20
+
21
+ <div class="z-50 w-max" data-popup={id}>
22
+ <ListBox class="bg-white border-solid border border-surface-500">
23
+ {#each items as item}
24
+ {#if isNewModule(item.Module) }<hr class="text-surface-800">{/if}
25
+ <ListBoxItem class="bg-white text-sm text-surface-800 py-1 hover:bg-surface-100 hover:text-secondary-500"
26
+ bind:group={item.Title}
27
+ name="medium"
28
+ value={item.Title}
29
+ on:click={()=> goTo(item.Url)}
30
+ >
31
+ {item.Title}
32
+ </ListBoxItem>
33
+ {/each}
34
+ </ListBox>
35
+ </div>
@@ -0,0 +1,18 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ import type { MenuItem } from "./menu";
3
+ declare const __propDef: {
4
+ props: {
5
+ id: any;
6
+ items: MenuItem[];
7
+ };
8
+ events: {
9
+ [evt: string]: CustomEvent<any>;
10
+ };
11
+ slots: {};
12
+ };
13
+ export type MenuSublistProps = typeof __propDef.props;
14
+ export type MenuSublistEvents = typeof __propDef.events;
15
+ export type MenuSublistSlots = typeof __propDef.slots;
16
+ export default class MenuSublist extends SvelteComponentTyped<MenuSublistProps, MenuSublistEvents, MenuSublistSlots> {
17
+ }
18
+ export {};
@@ -2,45 +2,27 @@
2
2
  import { ListBox, ListBoxItem } from "@skeletonlabs/skeleton";
3
3
  import Fa from "svelte-fa/src/fa.svelte";
4
4
  import { faCog } from "@fortawesome/free-solid-svg-icons";
5
+ import { goTo } from "../../../services/BaseCaller";
5
6
  export let menuBar;
6
- let lastModule = "";
7
- let first = true;
8
- function isNewModule(module) {
9
- if (module === lastModule) {
10
- return false;
11
- } else {
12
- lastModule = module;
13
- if (first) {
14
- first = false;
15
- return false;
16
- }
17
- return true;
18
- }
19
- }
7
+ import MenuSublist from "./MenuSublist.svelte";
20
8
  let popupCombobox = {
21
9
  event: "click",
22
- target: "popupCombobox",
10
+ target: "settings",
23
11
  placement: "bottom",
24
12
  // Close the popup when the item is clicked
25
13
  closeQuery: ".listbox-item"
26
14
  };
27
15
  </script>
16
+
17
+ {#if menuBar}
18
+ <button class="flex items-center gap-x-1 text-sm text-surface-800" use:popup={popupCombobox}>
19
+ <span class="capitalize"><Fa icon={faCog} /></span>
20
+
21
+ </button>
28
22
 
29
- {#if menuBar}
30
- <button class="flex items-center gap-x-1 text-sm font-semibold leading-6 text-gray-900" use:popup={popupCombobox}>
31
- <span class="capitalize"><Fa icon={faCog} /></span>
32
-
33
- </button>
34
- <div class="card w-48 shadow-xl py-2" data-popup="popupCombobox">
35
- <ListBox rounded="rounded-none bg-white">
36
- {#each menuBar as menubarItem}
37
- {#if isNewModule(menubarItem.Module) }<hr class="bg-gray-900">{/if}
38
- <ListBoxItem class="bg-white text-gray-900 py-1" href="{menubarItem.Url}" bind:group={menubarItem.Title} name="medium" value={menubarItem.Title}><a href={menubarItem.Url}>{menubarItem.Title}</a></ListBoxItem>
39
-
40
-
41
-
42
- {/each}
43
- </ListBox>
44
- </div>
45
- {/if}
23
+ <MenuSublist id="settings" items={menuBar} />
24
+
46
25
 
26
+ {/if}
27
+
28
+
package/dist/index.d.ts CHANGED
@@ -23,8 +23,8 @@ export { Checkbox, CheckboxKVPList, CheckboxList, DateInput, DropdownKVP, MultiS
23
23
  export { FileInfo, FileIcon, FileUploader };
24
24
  export { ListView, TableView, Spinner, Page, Alert };
25
25
  export { Api } from './services/Api.js';
26
- export { host, username, password, setApiConfig } from './stores/apistore.js';
27
- export type { user, Input, FileUploaderModel, Link, ListItem, KvP } from './models/Models.js';
28
- export { Position } from './models/Enums';
26
+ export { host, username, password, setApiConfig } from './stores/apiStores.ts';
27
+ export type { user, inputType, fileUploaderModel, linkType, listItemType, keyValuePairType } from './models/Models.ts';
28
+ export { positionType } from './models/Enums';
29
29
  export { Table, TableFilter, columnFilter, searchFilter };
30
30
  export type { TableConfig, Columns, Column };
package/dist/index.js CHANGED
@@ -29,8 +29,8 @@ export { FileInfo, FileIcon, FileUploader };
29
29
  export { ListView, TableView, Spinner, Page, Alert };
30
30
  //Api
31
31
  export { Api } from './services/Api.js';
32
- export { host, username, password, setApiConfig } from './stores/apistore.js';
32
+ export { host, username, password, setApiConfig } from './stores/apiStores.ts';
33
33
  //enum
34
- export { Position } from './models/Enums';
34
+ export { positionType } from './models/Enums';
35
35
  // Table
36
36
  export { Table, TableFilter, columnFilter, searchFilter };
@@ -1,4 +1,4 @@
1
- export declare enum Position {
1
+ export declare enum positionType {
2
2
  start = "start",
3
3
  end = "end",
4
4
  center = "center"
@@ -1,6 +1,6 @@
1
- export var Position;
2
- (function (Position) {
3
- Position["start"] = "start";
4
- Position["end"] = "end";
5
- Position["center"] = "center";
6
- })(Position || (Position = {}));
1
+ export var positionType;
2
+ (function (positionType) {
3
+ positionType["start"] = "start";
4
+ positionType["end"] = "end";
5
+ positionType["center"] = "center";
6
+ })(positionType || (positionType = {}));
@@ -1,11 +1,11 @@
1
1
  import type { SvelteComponent } from 'svelte';
2
2
  import type { ColumnFilterFn } from 'svelte-headless-table/lib/plugins';
3
3
  import type { Writable } from 'svelte/store';
4
- export interface Link {
4
+ export interface linkType {
5
5
  label: string;
6
6
  url: string;
7
7
  }
8
- export interface Input {
8
+ export interface inputType {
9
9
  id: string;
10
10
  label: string;
11
11
  feedback: string[];
@@ -14,29 +14,29 @@ export interface Input {
14
14
  required: boolean;
15
15
  placeholder: string;
16
16
  }
17
- export interface FileInfo {
17
+ export interface fileInfoType {
18
18
  name: string;
19
19
  type: string;
20
20
  length: number;
21
21
  description: string;
22
22
  validationHash: string;
23
23
  }
24
- export interface FileUploaderModel {
24
+ export interface fileUploaderModel {
25
25
  accept: string[];
26
- existingFiles: FileInfo[];
26
+ existingFiles: fileInfoType[];
27
27
  descriptionType: number;
28
28
  multiple: boolean;
29
29
  maxSize: number;
30
30
  lastModification: Date;
31
31
  }
32
- export interface Files {
32
+ export interface filesType {
33
33
  accepted: Blob[];
34
34
  rejected: Blob[];
35
35
  }
36
- export type user = {
36
+ export type userType = {
37
37
  name: string;
38
38
  };
39
- export interface FileObj {
39
+ export interface fileObjType {
40
40
  path: string;
41
41
  lastModified: number;
42
42
  lastModifiedDate: Date;
@@ -71,12 +71,22 @@ export interface TableConfig<T> {
71
71
  defaultPageSize?: number;
72
72
  optionsComponent?: typeof SvelteComponent;
73
73
  }
74
- export interface KvP {
74
+ export interface keyValuePairType {
75
75
  id: number;
76
76
  text: string;
77
77
  }
78
- export interface ListItem {
78
+ export interface listItemType {
79
79
  id: number;
80
80
  text: string;
81
81
  group: string;
82
82
  }
83
+ export interface helpItemType {
84
+ id?: string;
85
+ name: string;
86
+ description: string;
87
+ link?: string;
88
+ }
89
+ export interface helpStoreType {
90
+ itemId?: string;
91
+ helpItems: helpItemType[];
92
+ }
@@ -1 +1,2 @@
1
+ ;
1
2
  export {};
@@ -0,0 +1,16 @@
1
+ export class BreadcrumbModel {
2
+ items;
3
+ constructor() {
4
+ this.items = [];
5
+ }
6
+ }
7
+ // MENU
8
+ /********************************** */
9
+ export class MenuModel {
10
+ Logo;
11
+ LaunchBar;
12
+ MenuBar;
13
+ AccountBar;
14
+ Settings;
15
+ Extended;
16
+ }
@@ -1,6 +1,6 @@
1
1
  // Api.js
2
2
  import axios from 'axios';
3
- import { host, username, password } from '../stores/apistore';
3
+ import { host, username, password } from '../stores/apiStores';
4
4
  console.log('setup axios');
5
5
  // implement a method to execute all the request from here.
6
6
  const apiRequest = (method, url, request) => {
@@ -0,0 +1 @@
1
+ export function goTo(url: any): Promise<void>;
@@ -0,0 +1,12 @@
1
+ // Implementations for all the calls for the pokemon endpoints.
2
+ //import Api from "./Api";
3
+ import { host } from "../stores/apiStores";
4
+
5
+ // go to a internal action
6
+ export const goTo = async (url) => {
7
+ if(window!=null && host != null && url!=null){
8
+ window.open(host+url,"_self")?.focus()
9
+ }
10
+ };
11
+
12
+
@@ -0,0 +1,25 @@
1
+ import type { helpItemType, helpStoreType } from "../models/Models";
2
+ import type { breadcrumbItemType } from "../models/Page";
3
+ import { BreadcrumbModel } from "../models/Page";
4
+ export declare const helpStore: {
5
+ subscribe: (this: void, run: import("svelte/store").Subscriber<helpStoreType>, invalidate?: ((value?: helpStoreType | undefined) => void) | undefined) => import("svelte/store").Unsubscriber;
6
+ set: (this: void, value: helpStoreType) => void;
7
+ update: (this: void, updater: import("svelte/store").Updater<helpStoreType>) => void;
8
+ setHelpItemList: (helpItems: helpItemType[]) => void;
9
+ setItemId: (itemId: string) => void;
10
+ resetItemId: () => void;
11
+ show: (itemId: string) => void;
12
+ showHelpItem: (helpItem: helpItemType) => void;
13
+ hide: () => void;
14
+ toggle: (itemId: string) => void;
15
+ reset: () => void;
16
+ clear: () => void;
17
+ };
18
+ export declare const menuStore: import("svelte/store").Writable<Menu>;
19
+ export declare const breadcrumbStore: {
20
+ subscribe: (this: void, run: import("svelte/store").Subscriber<BreadcrumbModel>, invalidate?: ((value?: BreadcrumbModel | undefined) => void) | undefined) => import("svelte/store").Unsubscriber;
21
+ set: (this: void, value: BreadcrumbModel) => void;
22
+ update: (this: void, updater: import("svelte/store").Updater<BreadcrumbModel>) => void;
23
+ addItem: (item: breadcrumbItemType) => void;
24
+ clean: () => void;
25
+ };
@@ -0,0 +1,112 @@
1
+ import { BreadcrumbModel } from "../models/Page";
2
+ import { writable } from 'svelte/store';
3
+ function createHelpStore() {
4
+ // set Store Type
5
+ const { subscribe, set, update } = writable();
6
+ return {
7
+ //pass Store default functions
8
+ subscribe,
9
+ set,
10
+ update,
11
+ //set the list of help items to show
12
+ setHelpItemList: (helpItems) => {
13
+ helpStore.set({ itemId: undefined, helpItems: helpItems });
14
+ },
15
+ //set the ID of the help item and display it
16
+ setItemId: (itemId) => {
17
+ let v;
18
+ const h = [];
19
+ helpStore.subscribe(value => {
20
+ value = (value === undefined) ? { itemId: undefined, helpItems: h } : value;
21
+ value.helpItems = (value.helpItems === undefined) ? h : value.helpItems;
22
+ v = { itemId: itemId, helpItems: value.helpItems };
23
+ });
24
+ update(u => u = v);
25
+ },
26
+ //reset the ID of the help item and hide it
27
+ resetItemId: () => {
28
+ let v;
29
+ const h = [];
30
+ helpStore.subscribe(value => {
31
+ value = (value === undefined) ? { itemId: undefined, helpItems: h } : value;
32
+ value.helpItems = (value.helpItems === undefined) ? h : value.helpItems;
33
+ v = { itemId: undefined, helpItems: value.helpItems };
34
+ });
35
+ update(u => u = v);
36
+ },
37
+ //set the ID of the help item and display it
38
+ show: (itemId) => {
39
+ helpStore.setItemId(itemId);
40
+ },
41
+ //set a help item and display it
42
+ showHelpItem: (helpItem) => {
43
+ helpItem.id = (helpItem.id === undefined) ? "default" : helpItem.id;
44
+ helpStore.set({ itemId: helpItem.id, helpItems: [helpItem] });
45
+ },
46
+ //reset the ID of the help item and hide it
47
+ hide: () => {
48
+ helpStore.resetItemId();
49
+ },
50
+ //reset the ID of the help item and hide it
51
+ toggle: (itemId) => {
52
+ let v;
53
+ const h = [];
54
+ helpStore.subscribe(value => {
55
+ value = (value === undefined) ? { itemId: undefined, helpItems: h } : value;
56
+ value.helpItems = (value.helpItems === undefined) ? h : value.helpItems;
57
+ if (itemId != value.itemId) {
58
+ v = { itemId: itemId, helpItems: value.helpItems };
59
+ }
60
+ else {
61
+ v = { itemId: undefined, helpItems: value.helpItems };
62
+ }
63
+ });
64
+ update(u => u = v);
65
+ },
66
+ reset: () => {
67
+ const h = [];
68
+ helpStore.set({ itemId: undefined, helpItems: h });
69
+ },
70
+ clear: () => {
71
+ helpStore.reset();
72
+ }
73
+ };
74
+ }
75
+ //crate and export the instance of the store
76
+ export const helpStore = createHelpStore();
77
+ // store for menu
78
+ export const menuStore = writable();
79
+ function createBreadcrumbStore() {
80
+ // set Store Type
81
+ const { subscribe, set, update } = writable();
82
+ set(new BreadcrumbModel());
83
+ return {
84
+ //pass Store default functions
85
+ subscribe,
86
+ set,
87
+ update,
88
+ //set the ID of the help item and display it
89
+ addItem: (item) => {
90
+ let b;
91
+ breadcrumbStore.subscribe(value => {
92
+ value = (value === undefined) ? new BreadcrumbModel() : value;
93
+ // value.items = (value.items === undefined) ? b:value.items
94
+ if (!value.items.find(i => i.label === item.label)) {
95
+ value.items = [...value.items, item];
96
+ }
97
+ b = value;
98
+ });
99
+ update(s => s = b);
100
+ },
101
+ clean: () => {
102
+ let b;
103
+ breadcrumbStore.subscribe(value => {
104
+ value = new BreadcrumbModel();
105
+ b = value;
106
+ });
107
+ update(s => s = b);
108
+ },
109
+ };
110
+ }
111
+ // store for breadcrumb navigation
112
+ export const breadcrumbStore = createBreadcrumbStore();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bexis2/bexis2-core-ui",
3
- "version": "0.1.13",
3
+ "version": "0.2.0",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "dev": "vite dev",
@@ -1,5 +1,5 @@
1
1
  <script lang="ts">
2
- import type { FileUploaderModel, FileInfo, Files } from '../../models/Models.js';
2
+ import type { fileUploaderModel, fileInfoType, filesType } from '../../models/Models.js';
3
3
 
4
4
  import DropZone from 'svelte-file-dropzone/Dropzone.svelte';
5
5
  import Fa from 'svelte-fa/src/fa.svelte';
@@ -27,7 +27,7 @@
27
27
 
28
28
  export let context = '';
29
29
 
30
- export let data: FileUploaderModel | undefined;
30
+ export let data: fileUploaderModel | undefined;
31
31
 
32
32
  $: model = data;
33
33
  $: submitBt = 'submit';
@@ -36,9 +36,9 @@
36
36
 
37
37
  const dispatch = createEventDispatcher();
38
38
 
39
- let fx: FileInfo[];
39
+ let fx: fileInfoType[];
40
40
 
41
- let files: Files = { accepted: [], rejected: [] };
41
+ let files: filesType = { accepted: [], rejected: [] };
42
42
  $: files;
43
43
 
44
44
  onMount(async () => {
@@ -1,17 +1,19 @@
1
1
  <script lang="ts">
2
2
  import InputContainer from './InputContainer.svelte';
3
3
 
4
+ export let id;
4
5
  export let source;
5
6
  export let target;
6
7
  export let title;
7
8
  export let description = '';
8
9
  export let key;
10
+ export let help = false;
9
11
 
10
12
  let required = false;
11
13
  let feedback: [];
12
14
  </script>
13
15
 
14
- <InputContainer label={title} {feedback} {required}>
16
+ <InputContainer {id} label={title} {feedback} {required} {help}>
15
17
  {#each source as item}
16
18
  <label class="flex items-center space-x-2" for={key}>
17
19
  <input
@@ -9,9 +9,11 @@
9
9
  export let invalid: boolean = false;
10
10
  export let required: boolean = false;
11
11
  export let feedback: string[] = [''];
12
+ export let help = false;
13
+
12
14
  </script>
13
15
 
14
- <InputContainer {label} {feedback} {required}>
16
+ <InputContainer {id} {label} {feedback} {required} {help}>
15
17
  <input
16
18
  {id}
17
19
  class="input variant-form-material"
@@ -10,6 +10,7 @@
10
10
  export let feedback = [''];
11
11
  export let required = false;
12
12
  export let complexTarget = false;
13
+ export let help = false;
13
14
 
14
15
  $: selected = null;
15
16
 
@@ -41,7 +42,7 @@
41
42
  }
42
43
  </script>
43
44
 
44
- <InputContainer label={title} {feedback} {required}>
45
+ <InputContainer {id} label={title} {feedback} {required} {help}>
45
46
  <select
46
47
  {id}
47
48
  class="select variant-form-material"
@@ -1,9 +1,33 @@
1
1
  <script lang="ts">
2
+ import { helpStore } from '$store/pageStores'
3
+
4
+ export let id: string = '';
2
5
  export let label: string = '';
3
6
  export let required: boolean;
4
7
  export let feedback: string[];
5
- </script>
8
+ export let help:boolean=false;
9
+
10
+ function onMouseOver()
11
+ {
12
+
13
+ if(help)
14
+ {
15
+ helpStore.show(id);
16
+ }
17
+
18
+ }
6
19
 
20
+
21
+ function onMouseOut()
22
+ {
23
+ if(help)
24
+ {
25
+ helpStore.hide();
26
+ }
27
+ }
28
+
29
+ </script>
30
+ <div {id} on:mouseover={onMouseOver} on:mouseout={onMouseOut}>
7
31
  <label class="label">
8
32
  <span
9
33
  >{label}
@@ -20,3 +44,4 @@
20
44
  </span>
21
45
  {/if}
22
46
  </label>
47
+ </div>
@@ -17,8 +17,10 @@
17
17
  export let required = false;
18
18
  export let feedback = [''];
19
19
  export let placeholder = "-- Please select --"
20
- export let invalid = false
21
- export let loading = false
20
+ export let invalid = false;
21
+ export let loading = false;
22
+ export let help = false;
23
+
22
24
 
23
25
  let isLoaded = false;
24
26
 
@@ -149,7 +151,7 @@
149
151
  </script>
150
152
 
151
153
 
152
- <InputContainer label={title} {feedback} {required}>
154
+ <InputContainer {id} label={title} {feedback} {required} {help}>
153
155
  <Select
154
156
  {id}
155
157
  items={source}
@@ -1,5 +1,6 @@
1
1
  <script lang="ts">
2
2
  import InputContainer from './InputContainer.svelte';
3
+ import { helpStore } from '$store/pageStores'
3
4
 
4
5
  export let id: string = '';
5
6
  export let label: string = '';
@@ -10,9 +11,12 @@
10
11
  export let required: boolean = false;
11
12
  export let feedback: string[] = [''];
12
13
  export let placeholder: string = "";
14
+ export let help:boolean=false;
15
+
16
+
13
17
  </script>
14
18
 
15
- <InputContainer {label} {feedback} {required}>
19
+ <InputContainer {id} {label} {feedback} {required} {help}>
16
20
  <input
17
21
  {id}
18
22
  class="input variant-form-material"