@simplysm/solid 13.0.62 → 13.0.65

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 (157) hide show
  1. package/README.md +6 -0
  2. package/dist/components/data/sheet/DataSheet.d.ts.map +1 -1
  3. package/dist/components/data/sheet/DataSheet.js +3 -2
  4. package/dist/components/data/sheet/DataSheet.js.map +2 -2
  5. package/dist/components/features/address/AddressSearch.d.ts +8 -0
  6. package/dist/components/features/address/AddressSearch.d.ts.map +1 -0
  7. package/dist/components/features/address/AddressSearch.js +72 -0
  8. package/dist/components/features/address/AddressSearch.js.map +6 -0
  9. package/dist/components/features/crud-detail/CrudDetail.d.ts.map +1 -0
  10. package/dist/components/{data → features}/crud-detail/CrudDetail.js +62 -41
  11. package/dist/components/features/crud-detail/CrudDetail.js.map +6 -0
  12. package/dist/components/features/crud-detail/CrudDetailAfter.d.ts.map +1 -0
  13. package/dist/components/{data → features}/crud-detail/CrudDetailAfter.js.map +1 -1
  14. package/dist/components/features/crud-detail/CrudDetailBefore.d.ts.map +1 -0
  15. package/dist/components/{data → features}/crud-detail/CrudDetailBefore.js.map +1 -1
  16. package/dist/components/features/crud-detail/CrudDetailTools.d.ts.map +1 -0
  17. package/dist/components/{data → features}/crud-detail/CrudDetailTools.js.map +1 -1
  18. package/dist/components/features/crud-detail/types.d.ts.map +1 -0
  19. package/dist/components/features/crud-sheet/CrudSheet.d.ts.map +1 -0
  20. package/dist/components/{data → features}/crud-sheet/CrudSheet.js +166 -21
  21. package/dist/components/features/crud-sheet/CrudSheet.js.map +6 -0
  22. package/dist/components/features/crud-sheet/CrudSheetColumn.d.ts.map +1 -0
  23. package/dist/components/{data → features}/crud-sheet/CrudSheetColumn.js +1 -1
  24. package/dist/components/{data → features}/crud-sheet/CrudSheetColumn.js.map +1 -1
  25. package/dist/components/features/crud-sheet/CrudSheetFilter.d.ts.map +1 -0
  26. package/dist/components/{data → features}/crud-sheet/CrudSheetFilter.js.map +1 -1
  27. package/dist/components/features/crud-sheet/CrudSheetHeader.d.ts.map +1 -0
  28. package/dist/components/{data → features}/crud-sheet/CrudSheetHeader.js.map +1 -1
  29. package/dist/components/features/crud-sheet/CrudSheetTools.d.ts.map +1 -0
  30. package/dist/components/{data → features}/crud-sheet/CrudSheetTools.js.map +1 -1
  31. package/dist/components/{data → features}/crud-sheet/types.d.ts +10 -4
  32. package/dist/components/features/crud-sheet/types.d.ts.map +1 -0
  33. package/dist/components/features/data-select-button/DataSelectButton.d.ts +38 -0
  34. package/dist/components/features/data-select-button/DataSelectButton.d.ts.map +1 -0
  35. package/dist/components/features/data-select-button/DataSelectButton.js +184 -0
  36. package/dist/components/features/data-select-button/DataSelectButton.js.map +6 -0
  37. package/dist/components/features/permission-table/PermissionTable.d.ts.map +1 -0
  38. package/dist/components/{data → features}/permission-table/PermissionTable.js +1 -1
  39. package/dist/components/{data → features}/permission-table/PermissionTable.js.map +1 -1
  40. package/dist/components/features/shared-data/SharedDataSelect.d.ts +32 -0
  41. package/dist/components/features/shared-data/SharedDataSelect.d.ts.map +1 -0
  42. package/dist/components/features/shared-data/SharedDataSelect.js +74 -0
  43. package/dist/components/features/shared-data/SharedDataSelect.js.map +6 -0
  44. package/dist/components/features/shared-data/SharedDataSelectButton.d.ts +29 -0
  45. package/dist/components/features/shared-data/SharedDataSelectButton.d.ts.map +1 -0
  46. package/dist/components/features/shared-data/SharedDataSelectButton.js +17 -0
  47. package/dist/components/features/shared-data/SharedDataSelectButton.js.map +6 -0
  48. package/dist/components/features/shared-data/SharedDataSelectList.d.ts +29 -0
  49. package/dist/components/features/shared-data/SharedDataSelectList.d.ts.map +1 -0
  50. package/dist/components/features/shared-data/SharedDataSelectList.js +80 -0
  51. package/dist/components/features/shared-data/SharedDataSelectList.js.map +6 -0
  52. package/dist/components/form-control/checkbox/Checkbox.d.ts.map +1 -1
  53. package/dist/components/form-control/checkbox/Checkbox.js +10 -10
  54. package/dist/components/form-control/checkbox/Checkbox.js.map +2 -2
  55. package/dist/components/form-control/checkbox/Checkbox.styles.d.ts.map +1 -1
  56. package/dist/components/form-control/checkbox/Checkbox.styles.js +2 -2
  57. package/dist/components/form-control/checkbox/Checkbox.styles.js.map +1 -1
  58. package/dist/components/form-control/checkbox/Radio.d.ts.map +1 -1
  59. package/dist/components/form-control/checkbox/Radio.js +13 -13
  60. package/dist/components/form-control/checkbox/Radio.js.map +2 -2
  61. package/dist/components/form-control/select/Select.d.ts +7 -3
  62. package/dist/components/form-control/select/Select.d.ts.map +1 -1
  63. package/dist/components/form-control/select/Select.js +146 -45
  64. package/dist/components/form-control/select/Select.js.map +2 -2
  65. package/dist/components/form-control/select-list/SelectList.d.ts +54 -0
  66. package/dist/components/form-control/select-list/SelectList.d.ts.map +1 -0
  67. package/dist/components/form-control/select-list/SelectList.js +280 -0
  68. package/dist/components/form-control/select-list/SelectList.js.map +6 -0
  69. package/dist/components/form-control/select-list/SelectListContext.d.ts +13 -0
  70. package/dist/components/form-control/select-list/SelectListContext.d.ts.map +1 -0
  71. package/dist/components/form-control/select-list/SelectListContext.js +14 -0
  72. package/dist/components/form-control/select-list/SelectListContext.js.map +6 -0
  73. package/dist/index.d.ts +11 -5
  74. package/dist/index.d.ts.map +1 -1
  75. package/dist/index.js +11 -5
  76. package/dist/index.js.map +1 -1
  77. package/dist/providers/ServiceClientContext.d.ts +5 -5
  78. package/dist/providers/ServiceClientContext.d.ts.map +1 -1
  79. package/dist/providers/ServiceClientProvider.d.ts.map +1 -1
  80. package/dist/providers/ServiceClientProvider.js +12 -8
  81. package/dist/providers/ServiceClientProvider.js.map +2 -2
  82. package/dist/providers/shared-data/SharedDataContext.d.ts +16 -2
  83. package/dist/providers/shared-data/SharedDataContext.d.ts.map +1 -1
  84. package/dist/providers/shared-data/SharedDataContext.js.map +1 -1
  85. package/dist/providers/shared-data/SharedDataProvider.d.ts +1 -2
  86. package/dist/providers/shared-data/SharedDataProvider.d.ts.map +1 -1
  87. package/dist/providers/shared-data/SharedDataProvider.js +27 -13
  88. package/dist/providers/shared-data/SharedDataProvider.js.map +2 -2
  89. package/docs/data-components.md +15 -4
  90. package/docs/form-controls.md +257 -0
  91. package/docs/hooks.md +30 -0
  92. package/docs/providers.md +7 -0
  93. package/package.json +5 -3
  94. package/src/components/data/sheet/DataSheet.tsx +6 -7
  95. package/src/components/features/address/AddressSearch.tsx +75 -0
  96. package/src/components/{data → features}/crud-detail/CrudDetail.tsx +51 -26
  97. package/src/components/{data → features}/crud-sheet/CrudSheet.tsx +160 -23
  98. package/src/components/{data → features}/crud-sheet/CrudSheetColumn.tsx +1 -1
  99. package/src/components/{data → features}/crud-sheet/types.ts +14 -4
  100. package/src/components/features/data-select-button/DataSelectButton.tsx +279 -0
  101. package/src/components/{data → features}/permission-table/PermissionTable.tsx +1 -1
  102. package/src/components/features/shared-data/SharedDataSelect.tsx +101 -0
  103. package/src/components/features/shared-data/SharedDataSelectButton.tsx +47 -0
  104. package/src/components/features/shared-data/SharedDataSelectList.tsx +85 -0
  105. package/src/components/form-control/checkbox/Checkbox.styles.ts +2 -2
  106. package/src/components/form-control/checkbox/Checkbox.tsx +18 -20
  107. package/src/components/form-control/checkbox/Radio.tsx +18 -20
  108. package/src/components/form-control/select/Select.tsx +192 -36
  109. package/src/components/form-control/select-list/SelectList.tsx +385 -0
  110. package/src/components/form-control/select-list/SelectListContext.ts +23 -0
  111. package/src/index.ts +29 -5
  112. package/src/providers/ServiceClientContext.ts +5 -5
  113. package/src/providers/ServiceClientProvider.tsx +17 -12
  114. package/src/providers/shared-data/SharedDataContext.ts +16 -2
  115. package/src/providers/shared-data/SharedDataProvider.tsx +33 -17
  116. package/dist/components/data/crud-detail/CrudDetail.d.ts.map +0 -1
  117. package/dist/components/data/crud-detail/CrudDetail.js.map +0 -6
  118. package/dist/components/data/crud-detail/CrudDetailAfter.d.ts.map +0 -1
  119. package/dist/components/data/crud-detail/CrudDetailBefore.d.ts.map +0 -1
  120. package/dist/components/data/crud-detail/CrudDetailTools.d.ts.map +0 -1
  121. package/dist/components/data/crud-detail/types.d.ts.map +0 -1
  122. package/dist/components/data/crud-sheet/CrudSheet.d.ts.map +0 -1
  123. package/dist/components/data/crud-sheet/CrudSheet.js.map +0 -6
  124. package/dist/components/data/crud-sheet/CrudSheetColumn.d.ts.map +0 -1
  125. package/dist/components/data/crud-sheet/CrudSheetFilter.d.ts.map +0 -1
  126. package/dist/components/data/crud-sheet/CrudSheetHeader.d.ts.map +0 -1
  127. package/dist/components/data/crud-sheet/CrudSheetTools.d.ts.map +0 -1
  128. package/dist/components/data/crud-sheet/types.d.ts.map +0 -1
  129. package/dist/components/data/permission-table/PermissionTable.d.ts.map +0 -1
  130. /package/dist/components/{data → features}/crud-detail/CrudDetail.d.ts +0 -0
  131. /package/dist/components/{data → features}/crud-detail/CrudDetailAfter.d.ts +0 -0
  132. /package/dist/components/{data → features}/crud-detail/CrudDetailAfter.js +0 -0
  133. /package/dist/components/{data → features}/crud-detail/CrudDetailBefore.d.ts +0 -0
  134. /package/dist/components/{data → features}/crud-detail/CrudDetailBefore.js +0 -0
  135. /package/dist/components/{data → features}/crud-detail/CrudDetailTools.d.ts +0 -0
  136. /package/dist/components/{data → features}/crud-detail/CrudDetailTools.js +0 -0
  137. /package/dist/components/{data → features}/crud-detail/types.d.ts +0 -0
  138. /package/dist/components/{data → features}/crud-detail/types.js +0 -0
  139. /package/dist/components/{data → features}/crud-detail/types.js.map +0 -0
  140. /package/dist/components/{data → features}/crud-sheet/CrudSheet.d.ts +0 -0
  141. /package/dist/components/{data → features}/crud-sheet/CrudSheetColumn.d.ts +0 -0
  142. /package/dist/components/{data → features}/crud-sheet/CrudSheetFilter.d.ts +0 -0
  143. /package/dist/components/{data → features}/crud-sheet/CrudSheetFilter.js +0 -0
  144. /package/dist/components/{data → features}/crud-sheet/CrudSheetHeader.d.ts +0 -0
  145. /package/dist/components/{data → features}/crud-sheet/CrudSheetHeader.js +0 -0
  146. /package/dist/components/{data → features}/crud-sheet/CrudSheetTools.d.ts +0 -0
  147. /package/dist/components/{data → features}/crud-sheet/CrudSheetTools.js +0 -0
  148. /package/dist/components/{data → features}/crud-sheet/types.js +0 -0
  149. /package/dist/components/{data → features}/crud-sheet/types.js.map +0 -0
  150. /package/dist/components/{data → features}/permission-table/PermissionTable.d.ts +0 -0
  151. /package/src/components/{data → features}/crud-detail/CrudDetailAfter.tsx +0 -0
  152. /package/src/components/{data → features}/crud-detail/CrudDetailBefore.tsx +0 -0
  153. /package/src/components/{data → features}/crud-detail/CrudDetailTools.tsx +0 -0
  154. /package/src/components/{data → features}/crud-detail/types.ts +0 -0
  155. /package/src/components/{data → features}/crud-sheet/CrudSheetFilter.tsx +0 -0
  156. /package/src/components/{data → features}/crud-sheet/CrudSheetHeader.tsx +0 -0
  157. /package/src/components/{data → features}/crud-sheet/CrudSheetTools.tsx +0 -0
@@ -0,0 +1,184 @@
1
+ import { template as _$template } from "solid-js/web";
2
+ import { delegateEvents as _$delegateEvents } from "solid-js/web";
3
+ import { effect as _$effect } from "solid-js/web";
4
+ import { setAttribute as _$setAttribute } from "solid-js/web";
5
+ import { memo as _$memo } from "solid-js/web";
6
+ import { insert as _$insert } from "solid-js/web";
7
+ import { createComponent as _$createComponent } from "solid-js/web";
8
+ import { className as _$className } from "solid-js/web";
9
+ var _tmpl$ = /* @__PURE__ */ _$template(`<span>`), _tmpl$2 = /* @__PURE__ */ _$template(`<span class="flex items-center gap-1">`), _tmpl$3 = /* @__PURE__ */ _$template(`<span>,`), _tmpl$4 = /* @__PURE__ */ _$template(`<button type=button data-clear-button tabindex=-1 aria-label="\uC120\uD0DD \uD574\uC81C">`), _tmpl$5 = /* @__PURE__ */ _$template(`<button type=button data-search-button tabindex=-1 aria-label=\uAC80\uC0C9>`), _tmpl$6 = /* @__PURE__ */ _$template(`<div data-data-select-button><div role=combobox aria-haspopup=dialog><div></div><div class="flex items-center gap-0.5">`);
10
+ import { createEffect, createMemo, createResource, createSignal, For, on, Show, splitProps } from "solid-js";
11
+ import clsx from "clsx";
12
+ import { twMerge } from "tailwind-merge";
13
+ import { IconSearch, IconX } from "@tabler/icons-solidjs";
14
+ import { Icon } from "../../display/Icon.js";
15
+ import { Invalid } from "../../form-control/Invalid.js";
16
+ import { useDialog } from "../../disclosure/DialogContext.js";
17
+ import { createControllableSignal } from "../../../hooks/createControllableSignal.js";
18
+ import { textMuted } from "../../../styles/tokens.styles.js";
19
+ import { triggerBaseClass, triggerDisabledClass, triggerInsetClass, triggerSizeClasses } from "../../form-control/DropdownTrigger.styles.js";
20
+ const containerClass = clsx("inline-flex items-center", "group");
21
+ const selectedValueClass = clsx("flex-1", "whitespace-nowrap", "overflow-hidden", "text-ellipsis");
22
+ const actionButtonClass = clsx("flex-shrink-0", "p-0.5", "rounded", "cursor-pointer", "transition-colors", "hover:bg-base-200 dark:hover:bg-base-700", "focus:outline-none");
23
+ function getTriggerContainerClass(options) {
24
+ return twMerge(triggerBaseClass, "px-2 py-1", options.size && triggerSizeClasses[options.size], options.disabled && triggerDisabledClass, options.inset && triggerInsetClass, options.class);
25
+ }
26
+ function DataSelectButton(props) {
27
+ const [local] = splitProps(props, ["value", "onValueChange", "load", "modal", "renderItem", "multiple", "required", "disabled", "size", "inset", "validate", "touchMode", "dialogOptions"]);
28
+ const dialog = useDialog();
29
+ const normalizeKeys = (value) => {
30
+ if (value === void 0 || value === null) return [];
31
+ if (Array.isArray(value)) return value;
32
+ return [value];
33
+ };
34
+ const [getValue, setValue] = createControllableSignal({
35
+ value: () => local.value,
36
+ onChange: () => local.onValueChange
37
+ });
38
+ const [loadKeys, setLoadKeys] = createSignal(normalizeKeys(local.value));
39
+ createEffect(on(() => getValue(), (value) => {
40
+ setLoadKeys(normalizeKeys(value));
41
+ }));
42
+ const [selectedItems] = createResource(loadKeys, async (keys) => {
43
+ if (keys.length === 0) return [];
44
+ return Promise.resolve(local.load(keys));
45
+ });
46
+ const hasValue = createMemo(() => {
47
+ const keys = normalizeKeys(getValue());
48
+ return keys.length > 0;
49
+ });
50
+ const clearable = createMemo(() => !local.required && hasValue() && !local.disabled);
51
+ const errorMsg = createMemo(() => {
52
+ var _a;
53
+ const v = getValue();
54
+ if (local.required) {
55
+ const keys = normalizeKeys(v);
56
+ if (keys.length === 0) return "\uD544\uC218 \uC785\uB825 \uD56D\uBAA9\uC785\uB2C8\uB2E4";
57
+ }
58
+ return (_a = local.validate) == null ? void 0 : _a.call(local, v);
59
+ });
60
+ const handleOpenModal = async () => {
61
+ if (local.disabled) return;
62
+ const result = await dialog.show(local.modal, local.dialogOptions ?? {});
63
+ if (result) {
64
+ const newKeys = result.selectedKeys;
65
+ if (local.multiple) {
66
+ setValue(newKeys);
67
+ } else {
68
+ setValue(newKeys.length > 0 ? newKeys[0] : void 0);
69
+ }
70
+ }
71
+ };
72
+ const handleClear = (e) => {
73
+ e.stopPropagation();
74
+ if (local.multiple) {
75
+ setValue([]);
76
+ } else {
77
+ setValue(void 0);
78
+ }
79
+ };
80
+ const renderSelectedDisplay = () => {
81
+ const items = selectedItems();
82
+ if (!items || items.length === 0) {
83
+ return (() => {
84
+ var _el$ = _tmpl$();
85
+ _$className(_el$, textMuted);
86
+ return _el$;
87
+ })();
88
+ }
89
+ return (() => {
90
+ var _el$2 = _tmpl$2();
91
+ _$insert(_el$2, _$createComponent(For, {
92
+ each: items,
93
+ children: (item, index) => [_$createComponent(Show, {
94
+ get when() {
95
+ return index() > 0;
96
+ },
97
+ get children() {
98
+ var _el$3 = _tmpl$3();
99
+ _$className(_el$3, textMuted);
100
+ return _el$3;
101
+ }
102
+ }), _$memo(() => local.renderItem(item))]
103
+ }));
104
+ return _el$2;
105
+ })();
106
+ };
107
+ const triggerClassName = () => getTriggerContainerClass({
108
+ size: local.size,
109
+ disabled: local.disabled,
110
+ inset: local.inset
111
+ });
112
+ return _$createComponent(Invalid, {
113
+ get message() {
114
+ return errorMsg();
115
+ },
116
+ variant: "border",
117
+ get touchMode() {
118
+ return local.touchMode;
119
+ },
120
+ get children() {
121
+ var _el$4 = _tmpl$6(), _el$5 = _el$4.firstChild, _el$6 = _el$5.firstChild, _el$7 = _el$6.nextSibling;
122
+ _$className(_el$4, containerClass);
123
+ _el$5.$$keydown = (e) => {
124
+ if (local.disabled) return;
125
+ if (e.key === "Enter" || e.key === " ") {
126
+ e.preventDefault();
127
+ void handleOpenModal();
128
+ }
129
+ };
130
+ _$setAttribute(_el$5, "aria-expanded", false);
131
+ _$className(_el$6, selectedValueClass);
132
+ _$insert(_el$6, renderSelectedDisplay);
133
+ _$insert(_el$7, _$createComponent(Show, {
134
+ get when() {
135
+ return clearable();
136
+ },
137
+ get children() {
138
+ var _el$8 = _tmpl$4();
139
+ _el$8.$$click = handleClear;
140
+ _$insert(_el$8, _$createComponent(Icon, {
141
+ icon: IconX,
142
+ size: "0.875em"
143
+ }));
144
+ _$effect(() => _$className(_el$8, twMerge(actionButtonClass, "text-base-400 hover:text-danger-500")));
145
+ return _el$8;
146
+ }
147
+ }), null);
148
+ _$insert(_el$7, _$createComponent(Show, {
149
+ get when() {
150
+ return !local.disabled;
151
+ },
152
+ get children() {
153
+ var _el$9 = _tmpl$5();
154
+ _el$9.$$click = () => void handleOpenModal();
155
+ _$insert(_el$9, _$createComponent(Icon, {
156
+ icon: IconSearch,
157
+ size: "0.875em"
158
+ }));
159
+ _$effect(() => _$className(_el$9, twMerge(actionButtonClass, "text-base-400 hover:text-primary-500")));
160
+ return _el$9;
161
+ }
162
+ }), null);
163
+ _$effect((_p$) => {
164
+ var _v$ = local.disabled || void 0, _v$2 = local.required || void 0, _v$3 = local.disabled ? -1 : 0, _v$4 = triggerClassName();
165
+ _v$ !== _p$.e && _$setAttribute(_el$5, "aria-disabled", _p$.e = _v$);
166
+ _v$2 !== _p$.t && _$setAttribute(_el$5, "aria-required", _p$.t = _v$2);
167
+ _v$3 !== _p$.a && _$setAttribute(_el$5, "tabindex", _p$.a = _v$3);
168
+ _v$4 !== _p$.o && _$className(_el$5, _p$.o = _v$4);
169
+ return _p$;
170
+ }, {
171
+ e: void 0,
172
+ t: void 0,
173
+ a: void 0,
174
+ o: void 0
175
+ });
176
+ return _el$4;
177
+ }
178
+ });
179
+ }
180
+ _$delegateEvents(["keydown", "click"]);
181
+ export {
182
+ DataSelectButton
183
+ };
184
+ //# sourceMappingURL=DataSelectButton.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/components/features/data-select-button/DataSelectButton.tsx"],
4
+ "mappings": "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",
5
+ "names": ["createEffect", "createMemo", "createResource", "createSignal", "For", "on", "Show", "splitProps", "clsx", "twMerge", "IconSearch", "IconX", "Icon", "Invalid", "useDialog", "createControllableSignal", "textMuted", "triggerBaseClass", "triggerDisabledClass", "triggerInsetClass", "triggerSizeClasses", "containerClass", "selectedValueClass", "actionButtonClass", "getTriggerContainerClass", "options", "size", "disabled", "inset", "class", "DataSelectButton", "props", "local", "dialog", "normalizeKeys", "value", "undefined", "Array", "isArray", "getValue", "setValue", "onChange", "onValueChange", "loadKeys", "setLoadKeys", "selectedItems", "keys", "length", "Promise", "resolve", "load", "hasValue", "clearable", "required", "errorMsg", "v", "validate", "handleOpenModal", "result", "show", "modal", "dialogOptions", "newKeys", "selectedKeys", "multiple", "handleClear", "e", "stopPropagation", "renderSelectedDisplay", "items", "_el$", "_tmpl$", "_$className", "_el$2", "_tmpl$2", "_$insert", "_$createComponent", "each", "children", "item", "index", "when", "_el$3", "_tmpl$3", "_$memo", "renderItem", "triggerClassName", "message", "variant", "touchMode", "_el$4", "_tmpl$6", "_el$5", "firstChild", "_el$6", "_el$7", "nextSibling", "$$keydown", "key", "preventDefault", "_$setAttribute", "_el$8", "_tmpl$4", "$$click", "icon", "_$effect", "_el$9", "_tmpl$5", "_p$", "_v$", "_v$2", "_v$3", "_v$4", "t", "a", "o", "_$delegateEvents"]
6
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PermissionTable.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\components\\features\\permission-table\\PermissionTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EACL,KAAK,SAAS,EAQf,MAAM,UAAU,CAAC;AAMlB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qCAAqC,CAAC;AAQnE,MAAM,WAAW,oBAAoB,CAAC,OAAO,GAAG,MAAM;IACpD,KAAK,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACzD,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,GAAG,CAAC,aAAa,CAAC;CAC3B;AAID,6BAA6B;AAC7B,wBAAgB,eAAe,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,MAAM,EAAE,CAY5E;AAED,wCAAwC;AACxC,wBAAgB,eAAe,CAAC,OAAO,EACrC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,EACzB,OAAO,EAAE,OAAO,EAAE,GAAG,SAAS,GAC7B,OAAO,CAAC,OAAO,CAAC,EAAE,CAiBpB;AAED,2BAA2B;AAC3B,wBAAgB,eAAe,CAAC,OAAO,EACrC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,GACf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAgCzB;AA8FD,eAAO,MAAM,eAAe,EAAE,SAAS,CAAC,oBAAoB,CAqG3D,CAAC"}
@@ -9,7 +9,7 @@ var _tmpl$ = /* @__PURE__ */ _$template(`<div data-permission-table>`), _tmpl$2
9
9
  import { createEffect, createMemo, createSignal, For, on, Show, splitProps } from "solid-js";
10
10
  import clsx from "clsx";
11
11
  import { twMerge } from "tailwind-merge";
12
- import { DataSheet } from "../sheet/DataSheet.js";
12
+ import { DataSheet } from "../../data/sheet/DataSheet.js";
13
13
  import { Checkbox } from "../../form-control/checkbox/Checkbox.js";
14
14
  import { borderDefault } from "../../../styles/tokens.styles.js";
15
15
  const titleCellClass = clsx("flex items-stretch", "px-2");
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../src/components/data/permission-table/PermissionTable.tsx"],
3
+ "sources": ["../../../../src/components/features/permission-table/PermissionTable.tsx"],
4
4
  "mappings": "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",
5
5
  "names": ["createEffect", "createMemo", "createSignal", "For", "on", "Show", "splitProps", "clsx", "twMerge", "DataSheet", "Checkbox", "borderDefault", "titleCellClass", "indentGuideWrapperClass", "indentGuideLineClass", "collectAllPerms", "items", "set", "Set", "walk", "list", "item", "perms", "p", "add", "children", "filterByModules", "modules", "length", "result", "some", "m", "includes", "undefined", "push", "changePermCheck", "value", "perm", "checked", "apply", "target", "href", "permIndex", "indexOf", "basePerm", "baseOff", "i", "child", "isItemVisible", "collectVisiblePerms", "isGroupPermChecked", "hasPermInTree", "isPermDisabled", "collectExpandable", "getChildren", "PermissionTable", "props", "local", "visibleItems", "filter", "filtered", "allPerms", "currentValue", "getAllExpandable", "expandedItems", "setExpandedItems", "defer", "handlePermChange", "newValue", "onValueChange", "_el$", "_tmpl$", "_$insert", "_$createComponent", "onExpandedItemsChange", "hideConfigBar", "Column", "key", "header", "sortable", "resizable", "ctx", "_el$2", "_tmpl$2", "_el$3", "firstChild", "_$className", "each", "Array", "from", "depth", "_el$4", "_tmpl$3", "_el$5", "title", "when", "disabled", "inset", "_$effect", "_p$", "_v$", "class", "_v$2", "style", "e", "t", "_$style"]
6
6
  }
@@ -0,0 +1,32 @@
1
+ import { type JSX } from "solid-js";
2
+ import { type SharedDataAccessor } from "../../../providers/shared-data/SharedDataContext";
3
+ import { type ComponentSize } from "../../../styles/tokens.styles";
4
+ /** SharedDataSelect Props */
5
+ export interface SharedDataSelectProps<TItem> {
6
+ /** 공유 데이터 접근자 */
7
+ data: SharedDataAccessor<TItem>;
8
+ /** 현재 선택된 값 */
9
+ value?: unknown;
10
+ /** 값 변경 콜백 */
11
+ onValueChange?: (value: unknown) => void;
12
+ /** 다중 선택 모드 */
13
+ multiple?: boolean;
14
+ /** 필수 입력 */
15
+ required?: boolean;
16
+ /** 비활성화 */
17
+ disabled?: boolean;
18
+ /** 트리거 크기 */
19
+ size?: ComponentSize;
20
+ /** 테두리 없는 스타일 */
21
+ inset?: boolean;
22
+ /** 항목 필터 함수 */
23
+ filterFn?: (item: TItem, index: number) => boolean;
24
+ /** 선택 모달 컴포넌트 팩토리 */
25
+ modal?: () => JSX.Element;
26
+ /** 편집 모달 컴포넌트 팩토리 */
27
+ editModal?: () => JSX.Element;
28
+ /** 아이템 렌더링 함수 */
29
+ children: (item: TItem, index: number, depth: number) => JSX.Element;
30
+ }
31
+ export declare function SharedDataSelect<TItem>(props: SharedDataSelectProps<TItem>): JSX.Element;
32
+ //# sourceMappingURL=SharedDataSelect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SharedDataSelect.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\components\\features\\shared-data\\SharedDataSelect.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,GAAG,EAA0B,MAAM,UAAU,CAAC;AAExE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AAI3F,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAEnE,6BAA6B;AAC7B,MAAM,WAAW,qBAAqB,CAAC,KAAK;IAC1C,iBAAiB;IACjB,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAEhC,eAAe;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,cAAc;IACd,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,eAAe;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW;IACX,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa;IACb,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,iBAAiB;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,eAAe;IACf,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IACnD,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC;IAC1B,qBAAqB;IACrB,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC;IAE9B,iBAAiB;IACjB,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC;CACtE;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,qBAAqB,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,CA6DxF"}
@@ -0,0 +1,74 @@
1
+ import { mergeProps as _$mergeProps } from "solid-js/web";
2
+ import { memo as _$memo } from "solid-js/web";
3
+ import { createComponent as _$createComponent } from "solid-js/web";
4
+ import { createMemo, mergeProps, splitProps } from "solid-js";
5
+ import { IconEdit, IconSearch } from "@tabler/icons-solidjs";
6
+ import { Select } from "../../form-control/select/Select.js";
7
+ import { Icon } from "../../display/Icon.js";
8
+ import { useDialog } from "../../disclosure/DialogContext.js";
9
+ function SharedDataSelect(props) {
10
+ const [local, rest] = splitProps(props, ["data", "filterFn", "modal", "editModal", "children"]);
11
+ const dialog = useDialog();
12
+ const items = createMemo(() => {
13
+ const allItems = local.data.items();
14
+ if (!local.filterFn) return allItems;
15
+ return allItems.filter(local.filterFn);
16
+ });
17
+ const handleOpenModal = async () => {
18
+ if (!local.modal) return;
19
+ await dialog.show(local.modal, {});
20
+ };
21
+ const handleOpenEditModal = async () => {
22
+ if (!local.editModal) return;
23
+ await dialog.show(local.editModal, {});
24
+ };
25
+ const selectProps = mergeProps(rest, {
26
+ get items() {
27
+ return items();
28
+ },
29
+ get getChildren() {
30
+ if (!local.data.getParentKey) return void 0;
31
+ return (item) => {
32
+ const key = local.data.getKey(item);
33
+ return items().filter((child) => local.data.getParentKey(child) === key);
34
+ };
35
+ },
36
+ get getSearchText() {
37
+ return local.data.getSearchText;
38
+ },
39
+ get getIsHidden() {
40
+ return local.data.getIsHidden;
41
+ }
42
+ });
43
+ return _$createComponent(Select, _$mergeProps(selectProps, {
44
+ get children() {
45
+ return [_$createComponent(Select.ItemTemplate, {
46
+ get children() {
47
+ return local.children;
48
+ }
49
+ }), _$memo(() => _$memo(() => !!local.modal)() && _$createComponent(Select.Action, {
50
+ onClick: () => void handleOpenModal(),
51
+ "aria-label": "\uAC80\uC0C9",
52
+ get children() {
53
+ return _$createComponent(Icon, {
54
+ icon: IconSearch,
55
+ size: "1em"
56
+ });
57
+ }
58
+ })), _$memo(() => _$memo(() => !!local.editModal)() && _$createComponent(Select.Action, {
59
+ onClick: () => void handleOpenEditModal(),
60
+ "aria-label": "\uD3B8\uC9D1",
61
+ get children() {
62
+ return _$createComponent(Icon, {
63
+ icon: IconEdit,
64
+ size: "1em"
65
+ });
66
+ }
67
+ }))];
68
+ }
69
+ }));
70
+ }
71
+ export {
72
+ SharedDataSelect
73
+ };
74
+ //# sourceMappingURL=SharedDataSelect.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/components/features/shared-data/SharedDataSelect.tsx"],
4
+ "mappings": ";;;AAAA,SAASA,YAAsBC,YAAYC,kBAAkB;AAC7D,SAASC,UAAUC,kBAAkB;AAErC,SAASC,cAAgC;AACzC,SAASC,YAAY;AACrB,SAASC,iBAAiB;AAkCnB,SAASC,iBAAwBC,OAAkD;AACxF,QAAM,CAACC,OAAOC,IAAI,IAAIT,WAAWO,OAAO,CAAC,QAAQ,YAAY,SAAS,aAAa,UAAU,CAAC;AAE9F,QAAMG,SAASL,UAAU;AAGzB,QAAMM,QAAQb,WAAW,MAAM;AAC7B,UAAMc,WAAWJ,MAAMK,KAAKF,MAAM;AAClC,QAAI,CAACH,MAAMM,SAAU,QAAOF;AAC5B,WAAOA,SAASG,OAAOP,MAAMM,QAAQ;EACvC,CAAC;AAGD,QAAME,kBAAkB,YAAY;AAClC,QAAI,CAACR,MAAMS,MAAO;AAClB,UAAMP,OAAOQ,KAAKV,MAAMS,OAAO,CAAC,CAAC;EACnC;AAGA,QAAME,sBAAsB,YAAY;AACtC,QAAI,CAACX,MAAMY,UAAW;AACtB,UAAMV,OAAOQ,KAAKV,MAAMY,WAAW,CAAC,CAAC;EACvC;AAIA,QAAMC,cAActB,WAAWU,MAAM;IACnC,IAAIE,QAAQ;AACV,aAAOA,MAAM;IACf;IACA,IAAIW,cAAc;AAChB,UAAI,CAACd,MAAMK,KAAKU,aAAc,QAAOC;AAErC,aAAQC,UAAgB;AACtB,cAAMC,MAAMlB,MAAMK,KAAKc,OAAOF,IAAI;AAClC,eAAOd,MAAM,EAAEI,OAAQa,WAAUpB,MAAMK,KAAKU,aAAcK,KAAK,MAAMF,GAAG;MAC1E;IACF;IACA,IAAIG,gBAAgB;AAClB,aAAOrB,MAAMK,KAAKgB;IACpB;IACA,IAAIC,cAAc;AAChB,aAAOtB,MAAMK,KAAKiB;IACpB;EACF,CAAC;AAED,SAAAC,kBACG5B,QAAM6B,aAAKX,aAAW;IAAA,IAAAY,WAAA;AAAA,aAAA,CAAAF,kBACpB5B,OAAO+B,cAAY;QAAA,IAAAD,WAAA;AAAA,iBAAEzB,MAAMyB;QAAQ;MAAA,CAAA,GAAAE,OAAA,MACnCA,OAAA,MAAA,CAAA,CAAA3B,MAAMS,KAAK,EAAA,KAAAc,kBACT5B,OAAOiC,QAAM;QAACC,SAASA,MAAM,KAAKrB,gBAAgB;QAAC,cAAA;QAAA,IAAAiB,WAAA;AAAA,iBAAAF,kBACjD3B,MAAI;YAACkC,MAAMpC;YAAYqC,MAAI;UAAA,CAAA;QAAA;MAAA,CAAA,CAE/B,GAAAJ,OAAA,MACAA,OAAA,MAAA,CAAA,CAAA3B,MAAMY,SAAS,EAAA,KAAAW,kBACb5B,OAAOiC,QAAM;QAACC,SAASA,MAAM,KAAKlB,oBAAoB;QAAC,cAAA;QAAA,IAAAc,WAAA;AAAA,iBAAAF,kBACrD3B,MAAI;YAACkC,MAAMrC;YAAUsC,MAAI;UAAA,CAAA;QAAA;MAAA,CAAA,CAE7B,CAAA;IAAA;EAAA,CAAA,CAAA;AAGP;",
5
+ "names": ["createMemo", "mergeProps", "splitProps", "IconEdit", "IconSearch", "Select", "Icon", "useDialog", "SharedDataSelect", "props", "local", "rest", "dialog", "items", "allItems", "data", "filterFn", "filter", "handleOpenModal", "modal", "show", "handleOpenEditModal", "editModal", "selectProps", "getChildren", "getParentKey", "undefined", "item", "key", "getKey", "child", "getSearchText", "getIsHidden", "_$createComponent", "_$mergeProps", "children", "ItemTemplate", "_$memo", "Action", "onClick", "icon", "size"]
6
+ }
@@ -0,0 +1,29 @@
1
+ import { type JSX } from "solid-js";
2
+ import { type SharedDataAccessor } from "../../../providers/shared-data/SharedDataContext";
3
+ import { type DataSelectButtonProps } from "../data-select-button/DataSelectButton";
4
+ import { type ComponentSize } from "../../../styles/tokens.styles";
5
+ /** SharedDataSelectButton Props */
6
+ export interface SharedDataSelectButtonProps<TItem> {
7
+ /** 공유 데이터 접근자 */
8
+ data: SharedDataAccessor<TItem>;
9
+ /** 현재 선택된 키 (단일 또는 다중) */
10
+ value?: DataSelectButtonProps<TItem>["value"];
11
+ /** 값 변경 콜백 */
12
+ onValueChange?: DataSelectButtonProps<TItem>["onValueChange"];
13
+ /** 다중 선택 모드 */
14
+ multiple?: boolean;
15
+ /** 필수 입력 */
16
+ required?: boolean;
17
+ /** 비활성화 */
18
+ disabled?: boolean;
19
+ /** 트리거 크기 */
20
+ size?: ComponentSize;
21
+ /** 테두리 없는 스타일 */
22
+ inset?: boolean;
23
+ /** 선택 모달 컴포넌트 팩토리 */
24
+ modal: () => JSX.Element;
25
+ /** 아이템 렌더링 함수 */
26
+ children: (item: TItem) => JSX.Element;
27
+ }
28
+ export declare function SharedDataSelectButton<TItem>(props: SharedDataSelectButtonProps<TItem>): JSX.Element;
29
+ //# sourceMappingURL=SharedDataSelectButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SharedDataSelectButton.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\components\\features\\shared-data\\SharedDataSelectButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAc,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AAC3F,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAEnE,mCAAmC;AACnC,MAAM,WAAW,2BAA2B,CAAC,KAAK;IAChD,iBAAiB;IACjB,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAEhC,0BAA0B;IAC1B,KAAK,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;IAC9C,cAAc;IACd,aAAa,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC;IAC9D,eAAe;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW;IACX,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa;IACb,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,iBAAiB;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,qBAAqB;IACrB,KAAK,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC;IACzB,iBAAiB;IACjB,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,GAAG,CAAC,OAAO,CAAC;CACxC;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAC1C,KAAK,EAAE,2BAA2B,CAAC,KAAK,CAAC,GACxC,GAAG,CAAC,OAAO,CAUb"}
@@ -0,0 +1,17 @@
1
+ import { createComponent as _$createComponent } from "solid-js/web";
2
+ import { mergeProps as _$mergeProps } from "solid-js/web";
3
+ import { splitProps } from "solid-js";
4
+ import { DataSelectButton } from "../data-select-button/DataSelectButton.js";
5
+ function SharedDataSelectButton(props) {
6
+ const [local, rest] = splitProps(props, ["data", "children"]);
7
+ return _$createComponent(DataSelectButton, _$mergeProps({
8
+ load: (keys) => local.data.items().filter((item) => keys.includes(local.data.getKey(item))),
9
+ get renderItem() {
10
+ return local.children;
11
+ }
12
+ }, rest));
13
+ }
14
+ export {
15
+ SharedDataSelectButton
16
+ };
17
+ //# sourceMappingURL=SharedDataSelectButton.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/components/features/shared-data/SharedDataSelectButton.tsx"],
4
+ "mappings": ";;AAAA,SAAmBA,kBAAkB;AAErC,SACEC,wBAEK;AA6BA,SAASC,uBACdC,OACa;AACb,QAAM,CAACC,OAAOC,IAAI,IAAIL,WAAWG,OAAO,CAAC,QAAQ,UAAU,CAAC;AAE5D,SAAAG,kBACGL,kBAAgBM,aAAA;IACfC,MAAOC,UAASL,MAAMM,KAAKC,MAAM,EAAEC,OAAQC,UAASJ,KAAKK,SAASV,MAAMM,KAAKK,OAAOF,IAAI,CAAC,CAAC;IAAC,IAC3FG,aAAU;AAAA,aAAEZ,MAAMa;IAAQ;EAAA,GACtBZ,IAAI,CAAA;AAGd;",
5
+ "names": ["splitProps", "DataSelectButton", "SharedDataSelectButton", "props", "local", "rest", "_$createComponent", "_$mergeProps", "load", "keys", "data", "items", "filter", "item", "includes", "getKey", "renderItem", "children"]
6
+ }
@@ -0,0 +1,29 @@
1
+ import { type JSX } from "solid-js";
2
+ import { type SharedDataAccessor } from "../../../providers/shared-data/SharedDataContext";
3
+ /** SharedDataSelectList Props */
4
+ export interface SharedDataSelectListProps<TItem> {
5
+ /** 공유 데이터 접근자 */
6
+ data: SharedDataAccessor<TItem>;
7
+ /** 현재 선택된 값 */
8
+ value?: TItem;
9
+ /** 값 변경 콜백 */
10
+ onValueChange?: (value: TItem | undefined) => void;
11
+ /** 필수 입력 */
12
+ required?: boolean;
13
+ /** 비활성화 */
14
+ disabled?: boolean;
15
+ /** 항목 필터 함수 */
16
+ filterFn?: (item: TItem, index: number) => boolean;
17
+ /** 값 변경 가드 (false 반환 시 변경 차단) */
18
+ canChange?: (item: TItem | undefined) => boolean | Promise<boolean>;
19
+ /** 페이지 크기 (있으면 Pagination 자동 표시) */
20
+ pageSize?: number;
21
+ /** 헤더 텍스트 */
22
+ header?: string;
23
+ /** 관리 모달 컴포넌트 팩토리 */
24
+ modal?: () => JSX.Element;
25
+ /** 서브 컴포넌트용 children (ItemTemplate 등) */
26
+ children: JSX.Element;
27
+ }
28
+ export declare function SharedDataSelectList<TItem>(props: SharedDataSelectListProps<TItem>): JSX.Element;
29
+ //# sourceMappingURL=SharedDataSelectList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SharedDataSelectList.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\components\\features\\shared-data\\SharedDataSelectList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,GAAG,EAAoB,MAAM,UAAU,CAAC;AAElE,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,kDAAkD,CAAC;AAK3F,iCAAiC;AACjC,MAAM,WAAW,yBAAyB,CAAC,KAAK;IAC9C,iBAAiB;IACjB,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAEhC,eAAe;IACf,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,cAAc;IACd,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,KAAK,IAAI,CAAC;IACnD,YAAY;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW;IACX,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,eAAe;IACf,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IACnD,iCAAiC;IACjC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,GAAG,SAAS,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACpE,oCAAoC;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qBAAqB;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC,OAAO,CAAC;IAE1B,yCAAyC;IACzC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC;CACvB;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,yBAAyB,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,CAgDhG"}
@@ -0,0 +1,80 @@
1
+ import { template as _$template } from "solid-js/web";
2
+ import { delegateEvents as _$delegateEvents } from "solid-js/web";
3
+ import { mergeProps as _$mergeProps } from "solid-js/web";
4
+ import { createComponent as _$createComponent } from "solid-js/web";
5
+ import { insert as _$insert } from "solid-js/web";
6
+ import { memo as _$memo } from "solid-js/web";
7
+ var _tmpl$ = /* @__PURE__ */ _$template(`<span>`), _tmpl$2 = /* @__PURE__ */ _$template(`<button type=button class="inline-flex items-center justify-center rounded p-0.5 text-base-500 hover:text-primary-500 dark:text-base-400 dark:hover:text-primary-400"aria-label=\uAD00\uB9AC>`), _tmpl$3 = /* @__PURE__ */ _$template(`<div class="flex items-center gap-1">`);
8
+ import { createMemo, Show, splitProps } from "solid-js";
9
+ import { IconExternalLink } from "@tabler/icons-solidjs";
10
+ import { SelectList } from "../../form-control/select-list/SelectList.js";
11
+ import { Icon } from "../../display/Icon.js";
12
+ import { useDialog } from "../../disclosure/DialogContext.js";
13
+ function SharedDataSelectList(props) {
14
+ const [local, rest] = splitProps(props, ["data", "filterFn", "modal", "header", "children"]);
15
+ const dialog = useDialog();
16
+ const items = createMemo(() => {
17
+ const allItems = local.data.items();
18
+ if (!local.filterFn) return allItems;
19
+ return allItems.filter(local.filterFn);
20
+ });
21
+ const handleOpenModal = async () => {
22
+ if (!local.modal) return;
23
+ await dialog.show(local.modal, {});
24
+ };
25
+ return _$createComponent(SelectList, _$mergeProps(rest, {
26
+ get items() {
27
+ return items();
28
+ },
29
+ get getSearchText() {
30
+ return local.data.getSearchText;
31
+ },
32
+ get getIsHidden() {
33
+ return local.data.getIsHidden;
34
+ },
35
+ get children() {
36
+ return [_$createComponent(Show, {
37
+ get when() {
38
+ return local.header != null || local.modal != null;
39
+ },
40
+ get children() {
41
+ return _$createComponent(SelectList.Header, {
42
+ get children() {
43
+ var _el$ = _tmpl$3();
44
+ _$insert(_el$, _$createComponent(Show, {
45
+ get when() {
46
+ return local.header != null;
47
+ },
48
+ get children() {
49
+ var _el$2 = _tmpl$();
50
+ _$insert(_el$2, () => local.header);
51
+ return _el$2;
52
+ }
53
+ }), null);
54
+ _$insert(_el$, _$createComponent(Show, {
55
+ get when() {
56
+ return local.modal != null;
57
+ },
58
+ get children() {
59
+ var _el$3 = _tmpl$2();
60
+ _el$3.$$click = () => void handleOpenModal();
61
+ _$insert(_el$3, _$createComponent(Icon, {
62
+ icon: IconExternalLink,
63
+ size: "1em"
64
+ }));
65
+ return _el$3;
66
+ }
67
+ }), null);
68
+ return _el$;
69
+ }
70
+ });
71
+ }
72
+ }), _$memo(() => local.children)];
73
+ }
74
+ }));
75
+ }
76
+ _$delegateEvents(["click"]);
77
+ export {
78
+ SharedDataSelectList
79
+ };
80
+ //# sourceMappingURL=SharedDataSelectList.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/components/features/shared-data/SharedDataSelectList.tsx"],
4
+ "mappings": ";;;;;;;AAAA,SAASA,YAAsBC,MAAMC,kBAAkB;AACvD,SAASC,wBAAwB;AAEjC,SAASC,kBAAkB;AAC3B,SAASC,YAAY;AACrB,SAASC,iBAAiB;AA+BnB,SAASC,qBAA4BC,OAAsD;AAChG,QAAM,CAACC,OAAOC,IAAI,IAAIR,WAAWM,OAAO,CAAC,QAAQ,YAAY,SAAS,UAAU,UAAU,CAAC;AAE3F,QAAMG,SAASL,UAAU;AAGzB,QAAMM,QAAQZ,WAAW,MAAM;AAC7B,UAAMa,WAAWJ,MAAMK,KAAKF,MAAM;AAClC,QAAI,CAACH,MAAMM,SAAU,QAAOF;AAC5B,WAAOA,SAASG,OAAOP,MAAMM,QAAQ;EACvC,CAAC;AAGD,QAAME,kBAAkB,YAAY;AAClC,QAAI,CAACR,MAAMS,MAAO;AAClB,UAAMP,OAAOQ,KAAKV,MAAMS,OAAO,CAAC,CAAC;EACnC;AAEA,SAAAE,kBACGhB,YAAUiB,aACLX,MAAI;IAAA,IACRE,QAAK;AAAA,aAAEA,MAAM;IAAC;IAAA,IACdU,gBAAa;AAAA,aAAEb,MAAMK,KAAKQ;IAAa;IAAA,IACvCC,cAAW;AAAA,aAAEd,MAAMK,KAAKS;IAAW;IAAA,IAAAC,WAAA;AAAA,aAAA,CAAAJ,kBAGlCnB,MAAI;QAAA,IAACwB,OAAI;AAAA,iBAAEhB,MAAMiB,UAAU,QAAQjB,MAAMS,SAAS;QAAI;QAAA,IAAAM,WAAA;AAAA,iBAAAJ,kBACpDhB,WAAWuB,QAAM;YAAA,IAAAH,WAAA;AAAA,kBAAAI,OAAAC,QAAA;AAAAC,uBAAAF,MAAAR,kBAEbnB,MAAI;gBAAA,IAACwB,OAAI;AAAA,yBAAEhB,MAAMiB,UAAU;gBAAI;gBAAA,IAAAF,WAAA;AAAA,sBAAAO,QAAAC,OAAA;AAAAF,2BAAAC,OAAA,MACvBtB,MAAMiB,MAAM;AAAA,yBAAAK;gBAAA;cAAA,CAAA,GAAA,IAAA;AAAAD,uBAAAF,MAAAR,kBAEpBnB,MAAI;gBAAA,IAACwB,OAAI;AAAA,yBAAEhB,MAAMS,SAAS;gBAAI;gBAAA,IAAAM,WAAA;AAAA,sBAAAS,QAAAC,QAAA;AAAAD,wBAAAE,UAKlB,MAAM,KAAKlB,gBAAgB;AAACa,2BAAAG,OAAAb,kBAEpCf,MAAI;oBAAC+B,MAAMjC;oBAAkBkC,MAAI;kBAAA,CAAA,CAAA;AAAA,yBAAAJ;gBAAA;cAAA,CAAA,GAAA,IAAA;AAAA,qBAAAL;YAAA;UAAA,CAAA;QAAA;MAAA,CAAA,GAAAU,OAAA,MAM3C7B,MAAMe,QAAQ,CAAA;IAAA;EAAA,CAAA,CAAA;AAGrB;AAACe,iBAAA,CAAA,OAAA,CAAA;",
5
+ "names": ["createMemo", "Show", "splitProps", "IconExternalLink", "SelectList", "Icon", "useDialog", "SharedDataSelectList", "props", "local", "rest", "dialog", "items", "allItems", "data", "filterFn", "filter", "handleOpenModal", "modal", "show", "_$createComponent", "_$mergeProps", "getSearchText", "getIsHidden", "children", "when", "header", "Header", "_el$", "_tmpl$3", "_$insert", "_el$2", "_tmpl$", "_el$3", "_tmpl$2", "$$click", "icon", "size", "_$memo", "_$delegateEvents"]
6
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\components\\form-control\\checkbox\\Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,eAAe,EAAgC,MAAM,UAAU,CAAC;AAMxF,OAAO,EACL,KAAK,YAAY,EASlB,MAAM,mBAAmB,CAAC;AAM3B,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;IAClD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,GAAG,CAAC,aAAa,CAAC;IAC1B,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,QAAQ,EAAE,eAAe,CAAC,aAAa,CA+EnD,CAAC"}
1
+ {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["..\\..\\..\\..\\src\\components\\form-control\\checkbox\\Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,GAAG,EAAE,KAAK,eAAe,EAAgC,MAAM,UAAU,CAAC;AAMxF,OAAO,EACL,KAAK,YAAY,EASlB,MAAM,mBAAmB,CAAC;AAM3B,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;IAClD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,GAAG,CAAC,aAAa,CAAC;IAC1B,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,QAAQ,EAAE,eAAe,CAAC,aAAa,CA6EnD,CAAC"}
@@ -7,7 +7,7 @@ import { use as _$use } from "solid-js/web";
7
7
  import { spread as _$spread } from "solid-js/web";
8
8
  import { mergeProps as _$mergeProps } from "solid-js/web";
9
9
  import { memo as _$memo } from "solid-js/web";
10
- var _tmpl$ = /* @__PURE__ */ _$template(`<span>`), _tmpl$2 = /* @__PURE__ */ _$template(`<div class=inline-flex><label><div>`);
10
+ var _tmpl$ = /* @__PURE__ */ _$template(`<span>`), _tmpl$2 = /* @__PURE__ */ _$template(`<div><div>`);
11
11
  import { Show, splitProps, createMemo } from "solid-js";
12
12
  import { twMerge } from "tailwind-merge";
13
13
  import { IconCheck } from "@tabler/icons-solidjs";
@@ -50,9 +50,9 @@ const Checkbox = (props) => {
50
50
  return local.touchMode;
51
51
  },
52
52
  get children() {
53
- var _el$ = _tmpl$2(), _el$2 = _el$.firstChild, _el$3 = _el$2.firstChild;
54
- _$use(ripple, _el$2, () => !local.disabled);
55
- _$spread(_el$2, _$mergeProps(rest, {
53
+ var _el$ = _tmpl$2(), _el$2 = _el$.firstChild;
54
+ _$use(ripple, _el$, () => !local.disabled);
55
+ _$spread(_el$, _$mergeProps(rest, {
56
56
  "role": "checkbox",
57
57
  get ["aria-checked"]() {
58
58
  return value();
@@ -69,7 +69,7 @@ const Checkbox = (props) => {
69
69
  "onClick": handleClick,
70
70
  "onKeyDown": handleKeyDown
71
71
  }), false, true);
72
- _$insert(_el$3, _$createComponent(Show, {
72
+ _$insert(_el$2, _$createComponent(Show, {
73
73
  get when() {
74
74
  return value();
75
75
  },
@@ -80,17 +80,17 @@ const Checkbox = (props) => {
80
80
  });
81
81
  }
82
82
  }));
83
- _$insert(_el$2, _$createComponent(Show, {
83
+ _$insert(_el$, _$createComponent(Show, {
84
84
  get when() {
85
85
  return local.children;
86
86
  },
87
87
  get children() {
88
- var _el$4 = _tmpl$();
89
- _$insert(_el$4, () => local.children);
90
- return _el$4;
88
+ var _el$3 = _tmpl$();
89
+ _$insert(_el$3, () => local.children);
90
+ return _el$3;
91
91
  }
92
92
  }), null);
93
- _$effect(() => _$className(_el$3, getIndicatorClass()));
93
+ _$effect(() => _$className(_el$2, getIndicatorClass()));
94
94
  return _el$;
95
95
  }
96
96
  });