@wipco/sdui 0.19.0 → 0.19.1

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.
@@ -1,4 +1,4 @@
1
- import { buildCascadingTree } from './chunk-VAXBRGDZ.js';
1
+ import { buildCascadingTree } from './chunk-SUJCS7SU.js';
2
2
  import { Input, IconButton, EmptyState, Icon, Badge } from './chunk-WIDDHR7L.js';
3
3
  import { boxed } from './chunk-SAN4IX6N.js';
4
4
  import React, { useMemo, useState, useRef, useEffect } from 'react';
@@ -501,6 +501,7 @@ function DatePickerImpl({
501
501
  const next = event.relatedTarget;
502
502
  if (next instanceof Node && hostRef.current?.contains(next)) return;
503
503
  if (text !== fieldText) setText(fieldText);
504
+ setOpen(false);
504
505
  };
505
506
  return /* @__PURE__ */ jsxs("div", { ref: hostRef, className: "wp-dp-host", onBlur: handleBlur, children: [
506
507
  /* @__PURE__ */ jsx(HoistedStyle, { id: "wp-datepicker", css: DP_CSS }),
@@ -639,6 +640,7 @@ function DateRangePickerImpl({
639
640
  if (next instanceof Node && hostRef.current?.contains(next)) return;
640
641
  if (fromText !== fromValue) setFromText(fromValue);
641
642
  if (toText !== toValue) setToText(toValue);
643
+ setOpen(false);
642
644
  };
643
645
  const pick = (date) => {
644
646
  const ymd = formatYmd(date);
@@ -1,4 +1,4 @@
1
- import { DateRangePicker } from './chunk-L6HNC4B5.js';
1
+ import { DateRangePicker } from './chunk-HPZUPYPK.js';
2
2
  import { SegmentedControl, Select } from './chunk-WIDDHR7L.js';
3
3
  import { boxed } from './chunk-SAN4IX6N.js';
4
4
  import { useState, useMemo } from 'react';
@@ -1,5 +1,5 @@
1
- import { includesLooseSearch } from './chunk-VAXBRGDZ.js';
2
- import { OverlayLayer } from './chunk-L6HNC4B5.js';
1
+ import { includesLooseSearch } from './chunk-SUJCS7SU.js';
2
+ import { OverlayLayer } from './chunk-HPZUPYPK.js';
3
3
  import { Button, Dialog, Input, Tag, Checkbox } from './chunk-WIDDHR7L.js';
4
4
  import { boxed } from './chunk-SAN4IX6N.js';
5
5
  import React, { useMemo, useState, useEffect } from 'react';
@@ -1,4 +1,4 @@
1
- import { DateRangePicker } from './chunk-L6HNC4B5.js';
1
+ import { useOverlayLayer, DateRangePicker } from './chunk-HPZUPYPK.js';
2
2
  import { Input, Button, IconButton, Tag, Field, Checkbox } from './chunk-WIDDHR7L.js';
3
3
  import { useRef, useEffect, useState, useMemo } from 'react';
4
4
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
@@ -21,16 +21,12 @@ function Popover({
21
21
  if (event.target instanceof Node && hostRef.current?.contains(event.target)) return;
22
22
  closeRef.current();
23
23
  };
24
- const closeOnEscape = (event) => {
25
- if (event.key === "Escape") closeRef.current();
26
- };
27
24
  document.addEventListener("pointerdown", closeOnOutside);
28
- document.addEventListener("keydown", closeOnEscape);
29
25
  return () => {
30
26
  document.removeEventListener("pointerdown", closeOnOutside);
31
- document.removeEventListener("keydown", closeOnEscape);
32
27
  };
33
28
  }, [open]);
29
+ useOverlayLayer(open, () => closeRef.current(), hostRef);
34
30
  return (
35
31
  // 트리거와 패널을 함께 감싸는 기준 상자 — .erp-popover-host의 position:relative가
36
32
  // 패널 absolute의 기준이 된다
@@ -1,5 +1,5 @@
1
- import { resolveTreeNodes, TreeView } from './chunk-5H5DSIQW.js';
2
- import { OverlayLayer } from './chunk-L6HNC4B5.js';
1
+ import { resolveTreeNodes, TreeView } from './chunk-BQ5ZGGW7.js';
2
+ import { OverlayLayer } from './chunk-HPZUPYPK.js';
3
3
  import { Field, Dialog, Icon, Button, Input } from './chunk-WIDDHR7L.js';
4
4
  import { boxed } from './chunk-SAN4IX6N.js';
5
5
  import { useState, useMemo, useEffect } from 'react';
@@ -1,4 +1,4 @@
1
- import { includesLooseSearch } from './chunk-VAXBRGDZ.js';
1
+ import { includesLooseSearch } from './chunk-SUJCS7SU.js';
2
2
  import { Icon, Button, Input, Spinner } from './chunk-WIDDHR7L.js';
3
3
  import { boxed } from './chunk-SAN4IX6N.js';
4
4
  import { useId, useRef, useState, useEffect, useMemo } from 'react';
package/dist/index.js CHANGED
@@ -2,10 +2,10 @@ import { DEV, isSafeNavigationTarget, useSduiAdapter, hostFetchOf, useSduiSandbo
2
2
  export { defaultAdapter, useSduiAssetResolver, useSduiSandbox } from './chunk-WGRB5UL4.js';
3
3
  import { ImageViewer } from './chunk-THEP3VWY.js';
4
4
  export { ImageViewer } from './chunk-THEP3VWY.js';
5
- import { normalizeSearchFields, searchValuesFromParams, splitMultiValue, includesLooseSearch, cascadingValuePaths, SearchToolbar, searchFieldKeys, Popover } from './chunk-VAXBRGDZ.js';
6
- export { SearchToolbar, cascadingValuePaths, cleanSearchValues, includesLooseSearch, joinMultiValue, normalizeSearchText, searchFieldKeys, searchValuesFromParams, splitMultiValue } from './chunk-VAXBRGDZ.js';
7
- import { HoistedStyle, DateRangePicker, DatePicker, OverlayLayer } from './chunk-L6HNC4B5.js';
8
- export { DatePicker, DateRangePicker, OverlayContainerContext, OverlayLayer, getOverlayRoot, useOverlayLayer } from './chunk-L6HNC4B5.js';
5
+ import { normalizeSearchFields, searchValuesFromParams, splitMultiValue, includesLooseSearch, cascadingValuePaths, SearchToolbar, searchFieldKeys, Popover } from './chunk-SUJCS7SU.js';
6
+ export { SearchToolbar, cascadingValuePaths, cleanSearchValues, includesLooseSearch, joinMultiValue, normalizeSearchText, searchFieldKeys, searchValuesFromParams, splitMultiValue } from './chunk-SUJCS7SU.js';
7
+ import { HoistedStyle, DateRangePicker, DatePicker, OverlayLayer } from './chunk-HPZUPYPK.js';
8
+ export { DatePicker, DateRangePicker, OverlayContainerContext, OverlayLayer, getOverlayRoot, useOverlayLayer } from './chunk-HPZUPYPK.js';
9
9
  import { EmptyState, Button, Checkbox, SegmentedControl, Spinner, Select, Pagination, Icon, Card, Badge, ProgressBar, Tag, Toast, Textarea, Tabs, Table, Switch, StatCard, Input, IconButton, Field, Alert, warnOnce, Dialog } from './chunk-WIDDHR7L.js';
10
10
  export { Alert, Avatar, Badge, Breadcrumb, Button, Card, Checkbox, Dialog, EmptyState, Field, Icon, IconButton, Input, Pagination, ProgressBar, Radio, SegmentedControl, Select, SidebarNav, Spinner, StatCard, Switch, Table, Tabs, Tag, Textarea, Toast, Tooltip } from './chunk-WIDDHR7L.js';
11
11
  import { boxed, mergeStyle, containerLayoutStyle, joinClass, columnsClass, typographyStyle, LAYOUT_CSS, childLayoutFrom, CHILD_LAYOUT_PROPS } from './chunk-SAN4IX6N.js';
package/dist/rich.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { useSduiAssetResolver } from './chunk-WGRB5UL4.js';
2
- import { HoistedStyle } from './chunk-L6HNC4B5.js';
3
- export { DatePicker, DateRangePicker } from './chunk-L6HNC4B5.js';
2
+ import { HoistedStyle } from './chunk-HPZUPYPK.js';
3
+ export { DatePicker, DateRangePicker } from './chunk-HPZUPYPK.js';
4
4
  import { Spinner, EmptyState } from './chunk-WIDDHR7L.js';
5
5
  import './chunk-SAN4IX6N.js';
6
6
  import { useRef, useCallback, useMemo, useState, useEffect, useLayoutEffect } from 'react';
@@ -1,5 +1,5 @@
1
- export { AutocompleteField, toAutocompleteOptions } from '../chunk-6KGO2PO4.js';
2
- import '../chunk-VAXBRGDZ.js';
3
- import '../chunk-L6HNC4B5.js';
1
+ export { AutocompleteField, toAutocompleteOptions } from '../chunk-ZODL6LE2.js';
2
+ import '../chunk-SUJCS7SU.js';
3
+ import '../chunk-HPZUPYPK.js';
4
4
  import '../chunk-WIDDHR7L.js';
5
5
  import '../chunk-SAN4IX6N.js';
@@ -1,4 +1,4 @@
1
- export { PeriodFilter } from '../chunk-ACZHPPGA.js';
2
- import '../chunk-L6HNC4B5.js';
1
+ export { PeriodFilter } from '../chunk-IB4NDAYU.js';
2
+ import '../chunk-HPZUPYPK.js';
3
3
  import '../chunk-WIDDHR7L.js';
4
4
  import '../chunk-SAN4IX6N.js';
@@ -1,5 +1,5 @@
1
- export { SearchableMultiPicker } from '../chunk-LDVPLJ3S.js';
2
- import '../chunk-VAXBRGDZ.js';
3
- import '../chunk-L6HNC4B5.js';
1
+ export { SearchableMultiPicker } from '../chunk-NXY6QH36.js';
2
+ import '../chunk-SUJCS7SU.js';
3
+ import '../chunk-HPZUPYPK.js';
4
4
  import '../chunk-WIDDHR7L.js';
5
5
  import '../chunk-SAN4IX6N.js';
@@ -1,6 +1,6 @@
1
- export { TreePicker } from '../chunk-4IJGZ2TV.js';
2
- import '../chunk-5H5DSIQW.js';
3
- import '../chunk-VAXBRGDZ.js';
4
- import '../chunk-L6HNC4B5.js';
1
+ export { TreePicker } from '../chunk-YLYSOOVR.js';
2
+ import '../chunk-BQ5ZGGW7.js';
3
+ import '../chunk-SUJCS7SU.js';
4
+ import '../chunk-HPZUPYPK.js';
5
5
  import '../chunk-WIDDHR7L.js';
6
6
  import '../chunk-SAN4IX6N.js';
@@ -1,5 +1,5 @@
1
- export { TreeView, buildTreeNodes, pruneExcluded, resolveTreeNodes } from '../chunk-5H5DSIQW.js';
2
- import '../chunk-VAXBRGDZ.js';
3
- import '../chunk-L6HNC4B5.js';
1
+ export { TreeView, buildTreeNodes, pruneExcluded, resolveTreeNodes } from '../chunk-BQ5ZGGW7.js';
2
+ import '../chunk-SUJCS7SU.js';
3
+ import '../chunk-HPZUPYPK.js';
4
4
  import '../chunk-WIDDHR7L.js';
5
5
  import '../chunk-SAN4IX6N.js';
@@ -1,5 +1,5 @@
1
- import { SearchableMultiPicker } from '../chunk-LDVPLJ3S.js';
2
- export { SearchableMultiPicker } from '../chunk-LDVPLJ3S.js';
1
+ import { SearchableMultiPicker } from '../chunk-NXY6QH36.js';
2
+ export { SearchableMultiPicker } from '../chunk-NXY6QH36.js';
3
3
  import { SecureScreen } from '../chunk-IIRENCDS.js';
4
4
  export { SecureScreen } from '../chunk-IIRENCDS.js';
5
5
  import { StackedMeter } from '../chunk-BMZKZGJF.js';
@@ -12,10 +12,10 @@ import { TagMultiSelect } from '../chunk-QDEZXA34.js';
12
12
  export { TagMultiSelect } from '../chunk-QDEZXA34.js';
13
13
  import { Timeline } from '../chunk-EFYEOT47.js';
14
14
  export { Timeline } from '../chunk-EFYEOT47.js';
15
- import { TreePicker } from '../chunk-4IJGZ2TV.js';
16
- export { TreePicker } from '../chunk-4IJGZ2TV.js';
17
- import { TreeView } from '../chunk-5H5DSIQW.js';
18
- export { TreeView, buildTreeNodes } from '../chunk-5H5DSIQW.js';
15
+ import { TreePicker } from '../chunk-YLYSOOVR.js';
16
+ export { TreePicker } from '../chunk-YLYSOOVR.js';
17
+ import { TreeView } from '../chunk-BQ5ZGGW7.js';
18
+ export { TreeView, buildTreeNodes } from '../chunk-BQ5ZGGW7.js';
19
19
  import { EventCalendar } from '../chunk-C3JY6GA3.js';
20
20
  export { EventCalendar } from '../chunk-C3JY6GA3.js';
21
21
  import { ImageLightbox } from '../chunk-XPBZMECW.js';
@@ -28,14 +28,14 @@ import { LiveClock } from '../chunk-Z3WGIFJP.js';
28
28
  export { LiveClock } from '../chunk-Z3WGIFJP.js';
29
29
  import { OrgChart } from '../chunk-QWJ3OBBL.js';
30
30
  export { OrgChart } from '../chunk-QWJ3OBBL.js';
31
- import { PeriodFilter } from '../chunk-ACZHPPGA.js';
32
- export { PeriodFilter } from '../chunk-ACZHPPGA.js';
31
+ import { PeriodFilter } from '../chunk-IB4NDAYU.js';
32
+ export { PeriodFilter } from '../chunk-IB4NDAYU.js';
33
33
  import { PrintSheet } from '../chunk-MYJ2KEIP.js';
34
34
  export { PrintSheet } from '../chunk-MYJ2KEIP.js';
35
35
  import '../chunk-THEP3VWY.js';
36
- export { AutocompleteField, toAutocompleteOptions } from '../chunk-6KGO2PO4.js';
37
- import '../chunk-VAXBRGDZ.js';
38
- import '../chunk-L6HNC4B5.js';
36
+ export { AutocompleteField, toAutocompleteOptions } from '../chunk-ZODL6LE2.js';
37
+ import '../chunk-SUJCS7SU.js';
38
+ import '../chunk-HPZUPYPK.js';
39
39
  import { ColumnBoard } from '../chunk-C4JRSZGS.js';
40
40
  export { ColumnBoard } from '../chunk-C4JRSZGS.js';
41
41
  import { DiffView } from '../chunk-LDJ2CFFH.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wipco/sdui",
3
- "version": "0.19.0",
3
+ "version": "0.19.1",
4
4
  "description": "WIPCO 서버 주도 UI(SDUI) 렌더러 — JSON 페이지 스펙을 React 컴포넌트로 렌더링",
5
5
  "keywords": [
6
6
  "sdui",