@humandialog/forms.svelte 0.5.4 → 0.5.6

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 (134) hide show
  1. package/README.md +0 -0
  2. package/components/Fab.svelte +5 -3
  3. package/components/Fab.svelte.d.ts +14 -14
  4. package/components/Floating_container.svelte.d.ts +21 -21
  5. package/components/Grid.menu.svelte.d.ts +25 -25
  6. package/components/button.svelte.d.ts +24 -24
  7. package/components/checkbox.svelte.d.ts +26 -26
  8. package/components/combo/combo.d.ts +17 -17
  9. package/components/combo/combo.item.svelte.d.ts +19 -19
  10. package/components/combo/combo.js +17 -17
  11. package/components/combo/combo.source.svelte.d.ts +22 -22
  12. package/components/combo/combo.svelte +1 -1
  13. package/components/combo/combo.svelte.d.ts +42 -42
  14. package/components/contextmenu.svelte.d.ts +26 -26
  15. package/components/date.svelte.d.ts +31 -31
  16. package/components/delayed.spinner.svelte.d.ts +19 -19
  17. package/components/document/internal/Document_command.d.ts +9 -9
  18. package/components/document/internal/Document_command.js +9 -9
  19. package/components/document/internal/Selection_helper.d.ts +7 -7
  20. package/components/document/internal/Selection_helper.js +133 -133
  21. package/components/document/internal/Selection_range.d.ts +26 -26
  22. package/components/document/internal/Selection_range.js +58 -58
  23. package/components/document/internal/palette.row.svelte.d.ts +36 -36
  24. package/components/document/internal/palette.svelte.d.ts +67 -67
  25. package/components/document/rich.edit.svelte +49 -8
  26. package/components/document/rich.edit.svelte.d.ts +32 -32
  27. package/components/edit.field.svelte.d.ts +28 -28
  28. package/components/file.loader.svelte.d.ts +25 -25
  29. package/components/icon.svelte.d.ts +62 -62
  30. package/components/input.text.svelte.d.ts +29 -29
  31. package/components/inputbox.ltop.svelte +1 -1
  32. package/components/inputbox.ltop.svelte.d.ts +52 -52
  33. package/components/kanban/Kanban.d.ts +43 -23
  34. package/components/kanban/Kanban.js +79 -23
  35. package/components/kanban/internal/kanban.card.svelte +195 -117
  36. package/components/kanban/internal/kanban.card.svelte.d.ts +32 -35
  37. package/components/kanban/internal/kanban.column.svelte +152 -108
  38. package/components/kanban/internal/kanban.column.svelte.d.ts +51 -51
  39. package/components/kanban/internal/kanban.inserter.svelte +14 -14
  40. package/components/kanban/internal/kanban.inserter.svelte.d.ts +18 -18
  41. package/components/kanban/internal/kanban.move.menu.svelte +138 -135
  42. package/components/kanban/internal/kanban.move.menu.svelte.d.ts +22 -19
  43. package/components/kanban/internal/kanban.props.svelte +140 -0
  44. package/components/kanban/internal/kanban.props.svelte.d.ts +19 -0
  45. package/components/kanban/kanban.callbacks.svelte +3 -9
  46. package/components/kanban/kanban.callbacks.svelte.d.ts +18 -21
  47. package/components/kanban/kanban.column.svelte +10 -10
  48. package/components/kanban/kanban.column.svelte.d.ts +21 -21
  49. package/components/kanban/kanban.combo.svelte +36 -0
  50. package/components/kanban/kanban.combo.svelte.d.ts +24 -0
  51. package/components/kanban/kanban.date.svelte +30 -0
  52. package/components/kanban/kanban.date.svelte.d.ts +21 -0
  53. package/components/kanban/kanban.source.svelte +25 -0
  54. package/components/kanban/kanban.source.svelte.d.ts +23 -0
  55. package/components/kanban/kanban.static.svelte +28 -0
  56. package/components/kanban/kanban.static.svelte.d.ts +20 -0
  57. package/components/kanban/kanban.summary.svelte +4 -0
  58. package/components/kanban/kanban.summary.svelte.d.ts +18 -16
  59. package/components/kanban/kanban.svelte +459 -124
  60. package/components/kanban/kanban.svelte.d.ts +63 -43
  61. package/components/kanban/kanban.tags.svelte +34 -0
  62. package/components/kanban/kanban.tags.svelte.d.ts +23 -0
  63. package/components/kanban/kanban.title.svelte +4 -2
  64. package/components/kanban/kanban.title.svelte.d.ts +18 -17
  65. package/components/list/List.d.ts +44 -36
  66. package/components/list/List.js +52 -42
  67. package/components/list/internal/list.element.props.svelte +65 -65
  68. package/components/list/internal/list.element.props.svelte.d.ts +21 -21
  69. package/components/list/internal/list.element.summary.svelte +44 -30
  70. package/components/list/internal/list.element.summary.svelte.d.ts +25 -24
  71. package/components/list/internal/list.element.svelte +24 -11
  72. package/components/list/internal/list.element.svelte.d.ts +29 -29
  73. package/components/list/internal/list.inserter.svelte.d.ts +19 -19
  74. package/components/list/list.combo.svelte.d.ts +21 -21
  75. package/components/list/list.date.svelte.d.ts +18 -18
  76. package/components/list/list.inserter.svelte.d.ts +17 -17
  77. package/components/list/list.static.svelte.d.ts +17 -17
  78. package/components/list/list.summary.svelte.d.ts +19 -19
  79. package/components/list/list.svelte +2 -2
  80. package/components/list/list.svelte.d.ts +59 -59
  81. package/components/list/list.title.svelte +2 -0
  82. package/components/list/list.title.svelte.d.ts +22 -21
  83. package/components/menu.d.ts +4 -4
  84. package/components/menu.js +56 -56
  85. package/components/radio.svelte.d.ts +26 -26
  86. package/components/sidebar/sidebar.brand.svelte.d.ts +31 -31
  87. package/components/sidebar/sidebar.group.svelte +41 -3
  88. package/components/sidebar/sidebar.group.svelte.d.ts +33 -27
  89. package/components/sidebar/sidebar.item.svelte.d.ts +28 -28
  90. package/components/sidebar/sidebar.list.svelte +15 -15
  91. package/components/sidebar/sidebar.list.svelte.d.ts +33 -33
  92. package/components/sidebar/sidebar.svelte.d.ts +27 -27
  93. package/components/simple.table.svelte.d.ts +41 -41
  94. package/components/table/_template.table.svelte.d.ts +57 -57
  95. package/components/table/column.svelte.d.ts +19 -19
  96. package/components/table/item.svelte.d.ts +17 -17
  97. package/components/table/table.d.ts +11 -11
  98. package/components/table/table.js +11 -11
  99. package/components/table/table.svelte.d.ts +75 -75
  100. package/components/tag.svelte +40 -0
  101. package/components/tag.svelte.d.ts +19 -0
  102. package/components/tags.svelte +207 -0
  103. package/components/tags.svelte.d.ts +31 -0
  104. package/components/textarea.ltop.svelte.d.ts +35 -35
  105. package/components/tile.title.svelte.d.ts +29 -29
  106. package/desk.svelte.d.ts +23 -23
  107. package/form.box.svelte.d.ts +35 -35
  108. package/horizontal.toolbar.svelte +23 -4
  109. package/horizontal.toolbar.svelte.d.ts +25 -23
  110. package/index.d.ts +59 -52
  111. package/index.js +65 -58
  112. package/internal/configurable.content.svelte.d.ts +27 -27
  113. package/internal/loading.svelte.d.ts +23 -23
  114. package/modal.svelte +7 -7
  115. package/modal.svelte.d.ts +35 -35
  116. package/operations.svelte +52 -23
  117. package/operations.svelte.d.ts +16 -16
  118. package/package.json +16 -8
  119. package/page.row.svelte.d.ts +31 -31
  120. package/page.svelte +3 -3
  121. package/page.svelte.d.ts +45 -45
  122. package/stores.d.ts +39 -39
  123. package/stores.js +0 -0
  124. package/tenant.members.svelte +10 -11
  125. package/tenant.members.svelte.d.ts +33 -33
  126. package/tile.svelte.d.ts +33 -33
  127. package/tiles.row.svelte.d.ts +31 -31
  128. package/tiles.vertical.row.svelte.d.ts +29 -29
  129. package/updates.d.ts +4 -3
  130. package/updates.js +16 -0
  131. package/utils.d.ts +35 -35
  132. package/utils.js +11 -1
  133. package/vertical.toolbar.svelte +31 -6
  134. package/vertical.toolbar.svelte.d.ts +27 -25
@@ -1,57 +1,57 @@
1
- /** @typedef {typeof __propDef.props} TemplateProps */
2
- /** @typedef {typeof __propDef.events} TemplateEvents */
3
- /** @typedef {typeof __propDef.slots} TemplateSlots */
4
- export default class Template extends SvelteComponentTyped<{
5
- focus?: boolean | undefined;
6
- select?: string | undefined;
7
- context?: string | undefined;
8
- self?: null | undefined;
9
- nav?: boolean | undefined;
10
- collection?: string | undefined;
11
- objects?: null | undefined;
12
- headers?: any[] | undefined;
13
- fields?: any[] | undefined;
14
- cinfo?: string | undefined;
15
- }, {
16
- [evt: string]: CustomEvent<any>;
17
- }, {
18
- row: {
19
- item: any;
20
- };
21
- cell: {
22
- field: any;
23
- value: any;
24
- };
25
- }> {
26
- }
27
- export type TemplateProps = typeof __propDef.props;
28
- export type TemplateEvents = typeof __propDef.events;
29
- export type TemplateSlots = typeof __propDef.slots;
30
- import { SvelteComponentTyped } from "svelte";
31
- declare const __propDef: {
32
- props: {
33
- focus?: boolean | undefined;
34
- select?: string | undefined;
35
- context?: string | undefined;
36
- self?: null | undefined;
37
- nav?: boolean | undefined;
38
- collection?: string | undefined;
39
- objects?: null | undefined;
40
- headers?: any[] | undefined;
41
- fields?: any[] | undefined;
42
- cinfo?: string | undefined;
43
- };
44
- events: {
45
- [evt: string]: CustomEvent<any>;
46
- };
47
- slots: {
48
- row: {
49
- item: any;
50
- };
51
- cell: {
52
- field: any;
53
- value: any;
54
- };
55
- };
56
- };
57
- export {};
1
+ /** @typedef {typeof __propDef.props} TemplateProps */
2
+ /** @typedef {typeof __propDef.events} TemplateEvents */
3
+ /** @typedef {typeof __propDef.slots} TemplateSlots */
4
+ export default class Template extends SvelteComponentTyped<{
5
+ focus?: boolean | undefined;
6
+ select?: string | undefined;
7
+ context?: string | undefined;
8
+ self?: null | undefined;
9
+ nav?: boolean | undefined;
10
+ collection?: string | undefined;
11
+ objects?: null | undefined;
12
+ headers?: any[] | undefined;
13
+ fields?: any[] | undefined;
14
+ cinfo?: string | undefined;
15
+ }, {
16
+ [evt: string]: CustomEvent<any>;
17
+ }, {
18
+ row: {
19
+ item: any;
20
+ };
21
+ cell: {
22
+ field: any;
23
+ value: any;
24
+ };
25
+ }> {
26
+ }
27
+ export type TemplateProps = typeof __propDef.props;
28
+ export type TemplateEvents = typeof __propDef.events;
29
+ export type TemplateSlots = typeof __propDef.slots;
30
+ import { SvelteComponentTyped } from "svelte";
31
+ declare const __propDef: {
32
+ props: {
33
+ focus?: boolean | undefined;
34
+ select?: string | undefined;
35
+ context?: string | undefined;
36
+ self?: null | undefined;
37
+ nav?: boolean | undefined;
38
+ collection?: string | undefined;
39
+ objects?: null | undefined;
40
+ headers?: any[] | undefined;
41
+ fields?: any[] | undefined;
42
+ cinfo?: string | undefined;
43
+ };
44
+ events: {
45
+ [evt: string]: CustomEvent<any>;
46
+ };
47
+ slots: {
48
+ row: {
49
+ item: any;
50
+ };
51
+ cell: {
52
+ field: any;
53
+ value: any;
54
+ };
55
+ };
56
+ };
57
+ export {};
@@ -1,19 +1,19 @@
1
- import { SvelteComponentTyped } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- [x: string]: any;
5
- header?: string | undefined;
6
- field?: string | undefined;
7
- size?: number | undefined;
8
- };
9
- events: {
10
- [evt: string]: CustomEvent<any>;
11
- };
12
- slots: {};
13
- };
14
- export type ColumnProps = typeof __propDef.props;
15
- export type ColumnEvents = typeof __propDef.events;
16
- export type ColumnSlots = typeof __propDef.slots;
17
- export default class Column extends SvelteComponentTyped<ColumnProps, ColumnEvents, ColumnSlots> {
18
- }
19
- export {};
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ [x: string]: any;
5
+ header?: string | undefined;
6
+ field?: string | undefined;
7
+ size?: number | undefined;
8
+ };
9
+ events: {
10
+ [evt: string]: CustomEvent<any>;
11
+ };
12
+ slots: {};
13
+ };
14
+ export type ColumnProps = typeof __propDef.props;
15
+ export type ColumnEvents = typeof __propDef.events;
16
+ export type ColumnSlots = typeof __propDef.slots;
17
+ export default class Column extends SvelteComponentTyped<ColumnProps, ColumnEvents, ColumnSlots> {
18
+ }
19
+ export {};
@@ -1,17 +1,17 @@
1
- import { SvelteComponentTyped } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- e: any;
5
- idx: number;
6
- };
7
- events: {
8
- [evt: string]: CustomEvent<any>;
9
- };
10
- slots: {};
11
- };
12
- export type ItemProps = typeof __propDef.props;
13
- export type ItemEvents = typeof __propDef.events;
14
- export type ItemSlots = typeof __propDef.slots;
15
- export default class Item extends SvelteComponentTyped<ItemProps, ItemEvents, ItemSlots> {
16
- }
17
- export {};
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ e: any;
5
+ idx: number;
6
+ };
7
+ events: {
8
+ [evt: string]: CustomEvent<any>;
9
+ };
10
+ slots: {};
11
+ };
12
+ export type ItemProps = typeof __propDef.props;
13
+ export type ItemEvents = typeof __propDef.events;
14
+ export type ItemSlots = typeof __propDef.slots;
15
+ export default class Item extends SvelteComponentTyped<ItemProps, ItemEvents, ItemSlots> {
16
+ }
17
+ export {};
@@ -1,11 +1,11 @@
1
- export declare class rTable_column {
2
- header: string;
3
- field: string;
4
- size: number;
5
- cl: string;
6
- }
7
- export declare class rTable_definition {
8
- columns: rTable_column[];
9
- items: Array<any>;
10
- items_ticket: number;
11
- }
1
+ export declare class rTable_column {
2
+ header: string;
3
+ field: string;
4
+ size: number;
5
+ cl: string;
6
+ }
7
+ export declare class rTable_definition {
8
+ columns: rTable_column[];
9
+ items: Array<any>;
10
+ items_ticket: number;
11
+ }
@@ -1,11 +1,11 @@
1
- export class rTable_column {
2
- header;
3
- field;
4
- size = 0;
5
- cl = '';
6
- }
7
- export class rTable_definition {
8
- columns = [];
9
- items = null;
10
- items_ticket = 0;
11
- }
1
+ export class rTable_column {
2
+ header;
3
+ field;
4
+ size = 0;
5
+ cl = '';
6
+ }
7
+ export class rTable_definition {
8
+ columns = [];
9
+ items = null;
10
+ items_ticket = 0;
11
+ }
@@ -1,75 +1,75 @@
1
- import { SvelteComponentTyped } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- context?: string | undefined;
5
- collection?: string | undefined;
6
- self?: null | undefined;
7
- objects?: null | undefined;
8
- headers?: any[] | undefined;
9
- fields?: any[] | undefined;
10
- select?: string | undefined;
11
- cinfo?: string | undefined;
12
- focus?: boolean | undefined;
13
- nav?: boolean | undefined;
14
- c?: string | undefined;
15
- typename?: string | undefined;
16
- toolbarOperations?: any[] | undefined;
17
- menuOperations?: any[] | undefined;
18
- refresh?: (() => void) | undefined;
19
- updateObjects?: ((_objects: any) => void) | undefined;
20
- updateSelf?: ((_self: any) => void) | undefined;
21
- selectItem?: ((itm: any, cinfo: any) => void) | undefined;
22
- };
23
- events: {
24
- [evt: string]: CustomEvent<any>;
25
- };
26
- slots: {
27
- default: {};
28
- c0: {
29
- item: unknown;
30
- };
31
- c1: {
32
- item: unknown;
33
- };
34
- c2: {
35
- item: unknown;
36
- };
37
- c3: {
38
- item: unknown;
39
- };
40
- c4: {
41
- item: unknown;
42
- };
43
- c5: {
44
- item: unknown;
45
- };
46
- c6: {
47
- item: unknown;
48
- };
49
- c7: {
50
- item: unknown;
51
- };
52
- c8: {
53
- item: unknown;
54
- };
55
- c9: {
56
- item: unknown;
57
- };
58
- c10: {
59
- item: unknown;
60
- };
61
- c11: {
62
- item: unknown;
63
- };
64
- };
65
- };
66
- export type TableProps = typeof __propDef.props;
67
- export type TableEvents = typeof __propDef.events;
68
- export type TableSlots = typeof __propDef.slots;
69
- export default class Table extends SvelteComponentTyped<TableProps, TableEvents, TableSlots> {
70
- get refresh(): () => void;
71
- get updateObjects(): (_objects: any) => void;
72
- get updateSelf(): (_self: any) => void;
73
- get selectItem(): (itm: any, cinfo: any) => void;
74
- }
75
- export {};
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ context?: string | undefined;
5
+ collection?: string | undefined;
6
+ self?: null | undefined;
7
+ objects?: null | undefined;
8
+ headers?: any[] | undefined;
9
+ fields?: any[] | undefined;
10
+ select?: string | undefined;
11
+ cinfo?: string | undefined;
12
+ focus?: boolean | undefined;
13
+ nav?: boolean | undefined;
14
+ c?: string | undefined;
15
+ typename?: string | undefined;
16
+ toolbarOperations?: any[] | undefined;
17
+ menuOperations?: any[] | undefined;
18
+ refresh?: (() => void) | undefined;
19
+ updateObjects?: ((_objects: any) => void) | undefined;
20
+ updateSelf?: ((_self: any) => void) | undefined;
21
+ selectItem?: ((itm: any, cinfo: any) => void) | undefined;
22
+ };
23
+ events: {
24
+ [evt: string]: CustomEvent<any>;
25
+ };
26
+ slots: {
27
+ default: {};
28
+ c0: {
29
+ item: unknown;
30
+ };
31
+ c1: {
32
+ item: unknown;
33
+ };
34
+ c2: {
35
+ item: unknown;
36
+ };
37
+ c3: {
38
+ item: unknown;
39
+ };
40
+ c4: {
41
+ item: unknown;
42
+ };
43
+ c5: {
44
+ item: unknown;
45
+ };
46
+ c6: {
47
+ item: unknown;
48
+ };
49
+ c7: {
50
+ item: unknown;
51
+ };
52
+ c8: {
53
+ item: unknown;
54
+ };
55
+ c9: {
56
+ item: unknown;
57
+ };
58
+ c10: {
59
+ item: unknown;
60
+ };
61
+ c11: {
62
+ item: unknown;
63
+ };
64
+ };
65
+ };
66
+ export type TableProps = typeof __propDef.props;
67
+ export type TableEvents = typeof __propDef.events;
68
+ export type TableSlots = typeof __propDef.slots;
69
+ export default class Table extends SvelteComponentTyped<TableProps, TableEvents, TableSlots> {
70
+ get refresh(): () => void;
71
+ get updateObjects(): (_objects: any) => void;
72
+ get updateSelf(): (_self: any) => void;
73
+ get selectItem(): (itm: any, cinfo: any) => void;
74
+ }
75
+ export {};
@@ -0,0 +1,40 @@
1
+ <script>import FaTimes from "svelte-icons/fa/FaTimes.svelte";
2
+ export let name;
3
+ export let color;
4
+ export let onRemove = void 0;
5
+ export let s = "sm";
6
+ let pr = onRemove ? "pr-1" : "pr-2";
7
+ let font;
8
+ let x_size;
9
+ switch (s) {
10
+ case "md":
11
+ font = "mt-0.5 text-sm font-semibold";
12
+ x_size = "mt-1 w-3 h-3";
13
+ break;
14
+ case "sm":
15
+ font = "mt-0 sm:mt-0.5 text-sm sm:text-xs font-semibold";
16
+ x_size = "ml-3 sm:ml-1 mt-1 sm:mt-1.5 w-3 sm:w-2 h-3 sm:h-2";
17
+ break;
18
+ case "xs":
19
+ font = "mt-0 sm:mt-0 text-xs sm:text-[0.65rem] font-semibold sm:font-normal";
20
+ x_size = "ml-3 sm:ml-1 mt-0.5 sm:mt-1 w-3 sm:w-2 h-3 sm:h-2";
21
+ break;
22
+ }
23
+ </script>
24
+
25
+ <div class="mt-1 pl-2 {pr} rounded text-white flex flex-row" style="background-color:{color}">
26
+ <div class="{font}">{name}</div>
27
+ {#if onRemove}
28
+ <div class="no-print inline-block {x_size} hover:cursor-pointer"
29
+ on:click={onRemove}><FaTimes/></div>
30
+ {/if}
31
+ </div>
32
+
33
+ <style>
34
+ @media print
35
+ {
36
+ .no-print, .no-print *{
37
+ display: none !important;
38
+ }
39
+ }
40
+ </style>
@@ -0,0 +1,19 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ name: string;
5
+ color: string;
6
+ onRemove?: any | undefined;
7
+ s?: string | undefined;
8
+ };
9
+ events: {
10
+ [evt: string]: CustomEvent<any>;
11
+ };
12
+ slots: {};
13
+ };
14
+ export type TagProps = typeof __propDef.props;
15
+ export type TagEvents = typeof __propDef.events;
16
+ export type TagSlots = typeof __propDef.slots;
17
+ export default class Tag extends SvelteComponentTyped<TagProps, TagEvents, TagSlots> {
18
+ }
19
+ export {};
@@ -0,0 +1,207 @@
1
+ <script>import { tick, getContext } from "svelte";
2
+ import Tag from "./tag.svelte";
3
+ import FaPlus from "svelte-icons/fa/FaPlus.svelte";
4
+ import Combo from "./combo/combo.svelte";
5
+ import ComboItem from "./combo/combo.item.svelte";
6
+ import { contextItemsStore, data_tick_store, contextTypesStore } from "../stores.js";
7
+ import { informModification, pushChanges } from "../updates.js";
8
+ export let tags = "";
9
+ export let getGlobalTags;
10
+ export let self = null;
11
+ export let a = "";
12
+ export let context = "";
13
+ export let typename = "";
14
+ export let onSelect = void 0;
15
+ export let onCreate = void 0;
16
+ export let compact = true;
17
+ export let inContext = "";
18
+ export let pushChangesImmediately = true;
19
+ export let changed = void 0;
20
+ export let s = "sm";
21
+ let userClass = $$props.class ?? "";
22
+ let item = null;
23
+ let ctx = context ? context : getContext("ctx");
24
+ let tagsTable = [];
25
+ let globalTagsTable = [];
26
+ let isEditable = true;
27
+ $:
28
+ setup($data_tick_store, $contextItemsStore);
29
+ function setup(...args) {
30
+ const globalTags = getGlobalTags();
31
+ globalTagsTable = decomposeTags(globalTags);
32
+ if (!tags) {
33
+ item = self ?? $contextItemsStore[ctx];
34
+ if (!typename)
35
+ typename = $contextTypesStore[ctx];
36
+ if (!typename) {
37
+ if (item.$type)
38
+ typename = item.$type;
39
+ else if (item.$ref) {
40
+ let s2 = item.$ref.split("/");
41
+ typename = s2[1];
42
+ }
43
+ }
44
+ if (!item[a])
45
+ tags = "";
46
+ else
47
+ tags = item[a];
48
+ }
49
+ tagsTable = decomposeTags(tags, globalTagsTable);
50
+ if (compact) {
51
+ isEditable = false;
52
+ if (!inContext)
53
+ isEditable = true;
54
+ else {
55
+ let contexts = inContext.split(" ");
56
+ contexts.forEach((ctx2) => {
57
+ const selectedItem = $contextItemsStore[ctx2];
58
+ if (selectedItem && selectedItem.Id == item.Id)
59
+ isEditable = true;
60
+ });
61
+ }
62
+ } else
63
+ isEditable = true;
64
+ }
65
+ let addComboVisible = false;
66
+ let addCombo;
67
+ export async function show(event, hideCallback) {
68
+ if (event) {
69
+ event.stopPropagation();
70
+ event.preventDefault();
71
+ }
72
+ addComboVisible = true;
73
+ await tick();
74
+ const onAfterCloseCombo = () => {
75
+ addComboVisible = false;
76
+ if (hideCallback)
77
+ hideCallback();
78
+ };
79
+ addCombo?.show(void 0, onAfterCloseCombo);
80
+ }
81
+ function applyChange() {
82
+ if (onSelect)
83
+ onSelect(tags);
84
+ else if (item != null) {
85
+ item[a] = tags;
86
+ if (typename)
87
+ informModification(item, a, typename);
88
+ else
89
+ informModification(item, a);
90
+ if (pushChangesImmediately)
91
+ pushChanges();
92
+ }
93
+ if (!!changed)
94
+ changed(value);
95
+ }
96
+ function onSelectTag(itm, key, name) {
97
+ tags += `#${key} `;
98
+ tagsTable = decomposeTags(tags, globalTagsTable);
99
+ applyChange();
100
+ }
101
+ function onRemoveTag(tag) {
102
+ tags = tags.replace(`#${tag}`, "");
103
+ tagsTable = decomposeTags(tags, globalTagsTable);
104
+ applyChange();
105
+ }
106
+ function onNewTagCreated(key, name) {
107
+ tags += `#${key} `;
108
+ let globalTags = getGlobalTags();
109
+ globalTags += `#${key} `;
110
+ globalTagsTable = decomposeTags(globalTags);
111
+ tagsTable = decomposeTags(tags, globalTagsTable);
112
+ applyChange();
113
+ onCreate(globalTags);
114
+ }
115
+ function decomposeTags(tags2, referenceTable = void 0) {
116
+ let table = [];
117
+ if (!tags2)
118
+ return table;
119
+ let names = tags2.split("#");
120
+ for (let i = 0; i < names.length; i++) {
121
+ let name = names[i].trim();
122
+ if (!name)
123
+ continue;
124
+ let components = name.split(":");
125
+ let label = components[0];
126
+ if (!label)
127
+ continue;
128
+ let color;
129
+ if (components.length > 1)
130
+ color = components[1];
131
+ if (!color) {
132
+ if (referenceTable && Array.isArray(referenceTable)) {
133
+ const referenceItem = referenceTable.find((e) => e.label == label);
134
+ if (referenceItem)
135
+ color = referenceItem.color;
136
+ }
137
+ if (!color)
138
+ color = "DarkGray";
139
+ }
140
+ table.push({
141
+ label,
142
+ color
143
+ });
144
+ }
145
+ return table;
146
+ }
147
+ function getNotUsedTags() {
148
+ const globalTags = getGlobalTags();
149
+ globalTagsTable = decomposeTags(globalTags);
150
+ let result = globalTagsTable.filter((e) => {
151
+ const label = e.label;
152
+ let idx = tagsTable.findIndex((f) => f.label == label);
153
+ if (idx < 0)
154
+ return true;
155
+ else
156
+ return false;
157
+ });
158
+ return result;
159
+ }
160
+ let gap = "gap-2";
161
+ switch (s) {
162
+ case "md":
163
+ gap = "gap-3 sm:gap-2";
164
+ break;
165
+ case "sm":
166
+ gap = "gap-2 sm:gap-2";
167
+ break;
168
+ case "xs":
169
+ gap = "gap-2 sm:gap-1";
170
+ break;
171
+ }
172
+ </script>
173
+
174
+ <div class="{userClass} flex flex-row {gap} flex-wrap mr-1 sm:mr-0">
175
+ {#each tagsTable as tag}
176
+ {#if isEditable}
177
+ <Tag name={tag.label} color={tag.color} {s}
178
+ onRemove={(e) => {onRemoveTag(tag.label)}}/>
179
+ {:else}
180
+ <Tag name={tag.label} color={tag.color} {s}/>
181
+ {/if}
182
+ {/each}
183
+
184
+ {#if isEditable}
185
+ {#if !addComboVisible}
186
+ {#if !compact}
187
+ <button class="mt-1 pl-0 pr-1 rounded text-stone-500 flex flex-row border-stone-500 border hover:cursor-pointer"
188
+ on:click={(e) => { show(e, undefined)} }>
189
+ <div class="ml-1 mt-1 w-3 h-3"><FaPlus/></div>
190
+ </button>
191
+ {/if}
192
+ {:else}
193
+ <Combo compact={true}
194
+ inContext='data'
195
+ onSelect={onSelectTag}
196
+ onNewItemCreated={onNewTagCreated}
197
+ s={s}
198
+ filtered
199
+ bind:this={addCombo}>
200
+ {@const not_used_tags = getNotUsedTags()}
201
+ {#each not_used_tags as tag}
202
+ <ComboItem key={tag.label}/>
203
+ {/each}
204
+ </Combo>
205
+ {/if}
206
+ {/if}
207
+ </div>
@@ -0,0 +1,31 @@
1
+ import { SvelteComponentTyped } from "svelte";
2
+ declare const __propDef: {
3
+ props: {
4
+ [x: string]: any;
5
+ tags?: string | undefined;
6
+ getGlobalTags: Function;
7
+ self?: null | undefined;
8
+ a?: string | undefined;
9
+ context?: string | undefined;
10
+ typename?: string | undefined;
11
+ onSelect?: any | undefined;
12
+ onCreate?: any | undefined;
13
+ compact?: boolean | undefined;
14
+ inContext?: string | undefined;
15
+ pushChangesImmediately?: boolean | undefined;
16
+ changed?: undefined;
17
+ s?: string | undefined;
18
+ show?: ((event: any, hideCallback: any) => Promise<void>) | undefined;
19
+ };
20
+ events: {
21
+ [evt: string]: CustomEvent<any>;
22
+ };
23
+ slots: {};
24
+ };
25
+ export type TagsProps = typeof __propDef.props;
26
+ export type TagsEvents = typeof __propDef.events;
27
+ export type TagsSlots = typeof __propDef.slots;
28
+ export default class Tags extends SvelteComponentTyped<TagsProps, TagsEvents, TagsSlots> {
29
+ get show(): (event: any, hideCallback: any) => Promise<void>;
30
+ }
31
+ export {};