@contember/react-select 2.1.0-alpha.3 → 2.1.0-alpha.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +12 -12
- package/src/components/MultiSelect.tsx +1 -2
- package/src/components/Select.tsx +0 -1
- package/src/components/SelectDataView.tsx +1 -1
- package/src/components/SelectEachItem.tsx +0 -1
- package/src/components/SelectItemTrigger.tsx +1 -1
- package/src/components/SelectNewItem.tsx +27 -10
- package/src/components/SortableMultiSelect.tsx +64 -60
- package/src/contexts.ts +0 -2
- package/dist/development/index.cjs +0 -30
- package/dist/development/index.cjs.map +0 -1
- package/dist/development/index.js +0 -30
- package/dist/development/index.js.map +0 -1
- package/dist/development/src/components/MultiSelect.cjs +0 -54
- package/dist/development/src/components/MultiSelect.cjs.map +0 -1
- package/dist/development/src/components/MultiSelect.js +0 -54
- package/dist/development/src/components/MultiSelect.js.map +0 -1
- package/dist/development/src/components/Select.cjs +0 -52
- package/dist/development/src/components/Select.cjs.map +0 -1
- package/dist/development/src/components/Select.js +0 -52
- package/dist/development/src/components/Select.js.map +0 -1
- package/dist/development/src/components/SelectDataView.cjs +0 -30
- package/dist/development/src/components/SelectDataView.cjs.map +0 -1
- package/dist/development/src/components/SelectDataView.js +0 -30
- package/dist/development/src/components/SelectDataView.js.map +0 -1
- package/dist/development/src/components/SelectEachItem.cjs +0 -15
- package/dist/development/src/components/SelectEachItem.cjs.map +0 -1
- package/dist/development/src/components/SelectEachItem.js +0 -15
- package/dist/development/src/components/SelectEachItem.js.map +0 -1
- package/dist/development/src/components/SelectItemTrigger.cjs +0 -23
- package/dist/development/src/components/SelectItemTrigger.cjs.map +0 -1
- package/dist/development/src/components/SelectItemTrigger.js +0 -23
- package/dist/development/src/components/SelectItemTrigger.js.map +0 -1
- package/dist/development/src/components/SelectNewItem.cjs +0 -60
- package/dist/development/src/components/SelectNewItem.cjs.map +0 -1
- package/dist/development/src/components/SelectNewItem.js +0 -60
- package/dist/development/src/components/SelectNewItem.js.map +0 -1
- package/dist/development/src/components/SelectOption.cjs +0 -30
- package/dist/development/src/components/SelectOption.cjs.map +0 -1
- package/dist/development/src/components/SelectOption.js +0 -30
- package/dist/development/src/components/SelectOption.js.map +0 -1
- package/dist/development/src/components/SelectPlaceholder.cjs +0 -14
- package/dist/development/src/components/SelectPlaceholder.cjs.map +0 -1
- package/dist/development/src/components/SelectPlaceholder.js +0 -14
- package/dist/development/src/components/SelectPlaceholder.js.map +0 -1
- package/dist/development/src/components/SortableMultiSelect.cjs +0 -78
- package/dist/development/src/components/SortableMultiSelect.cjs.map +0 -1
- package/dist/development/src/components/SortableMultiSelect.js +0 -78
- package/dist/development/src/components/SortableMultiSelect.js.map +0 -1
- package/dist/development/src/contexts.cjs +0 -24
- package/dist/development/src/contexts.cjs.map +0 -1
- package/dist/development/src/contexts.js +0 -24
- package/dist/development/src/contexts.js.map +0 -1
- package/dist/production/index.cjs +0 -30
- package/dist/production/index.cjs.map +0 -1
- package/dist/production/index.js +0 -30
- package/dist/production/index.js.map +0 -1
- package/dist/production/src/components/MultiSelect.cjs +0 -34
- package/dist/production/src/components/MultiSelect.cjs.map +0 -1
- package/dist/production/src/components/MultiSelect.js +0 -34
- package/dist/production/src/components/MultiSelect.js.map +0 -1
- package/dist/production/src/components/Select.cjs +0 -32
- package/dist/production/src/components/Select.cjs.map +0 -1
- package/dist/production/src/components/Select.js +0 -32
- package/dist/production/src/components/Select.js.map +0 -1
- package/dist/production/src/components/SelectDataView.cjs +0 -22
- package/dist/production/src/components/SelectDataView.cjs.map +0 -1
- package/dist/production/src/components/SelectDataView.js +0 -22
- package/dist/production/src/components/SelectDataView.js.map +0 -1
- package/dist/production/src/components/SelectEachItem.cjs +0 -11
- package/dist/production/src/components/SelectEachItem.cjs.map +0 -1
- package/dist/production/src/components/SelectEachItem.js +0 -11
- package/dist/production/src/components/SelectEachItem.js.map +0 -1
- package/dist/production/src/components/SelectItemTrigger.cjs +0 -19
- package/dist/production/src/components/SelectItemTrigger.cjs.map +0 -1
- package/dist/production/src/components/SelectItemTrigger.js +0 -19
- package/dist/production/src/components/SelectItemTrigger.js.map +0 -1
- package/dist/production/src/components/SelectNewItem.cjs +0 -40
- package/dist/production/src/components/SelectNewItem.cjs.map +0 -1
- package/dist/production/src/components/SelectNewItem.js +0 -40
- package/dist/production/src/components/SelectNewItem.js.map +0 -1
- package/dist/production/src/components/SelectOption.cjs +0 -22
- package/dist/production/src/components/SelectOption.cjs.map +0 -1
- package/dist/production/src/components/SelectOption.js +0 -22
- package/dist/production/src/components/SelectOption.js.map +0 -1
- package/dist/production/src/components/SelectPlaceholder.cjs +0 -10
- package/dist/production/src/components/SelectPlaceholder.cjs.map +0 -1
- package/dist/production/src/components/SelectPlaceholder.js +0 -10
- package/dist/production/src/components/SelectPlaceholder.js.map +0 -1
- package/dist/production/src/components/SortableMultiSelect.cjs +0 -50
- package/dist/production/src/components/SortableMultiSelect.cjs.map +0 -1
- package/dist/production/src/components/SortableMultiSelect.js +0 -50
- package/dist/production/src/components/SortableMultiSelect.js.map +0 -1
- package/dist/production/src/contexts.cjs +0 -24
- package/dist/production/src/contexts.cjs.map +0 -1
- package/dist/production/src/contexts.js +0 -24
- package/dist/production/src/contexts.js.map +0 -1
- package/dist/types/components/MultiSelect.d.ts +0 -14
- package/dist/types/components/MultiSelect.d.ts.map +0 -1
- package/dist/types/components/Select.d.ts +0 -16
- package/dist/types/components/Select.d.ts.map +0 -1
- package/dist/types/components/SelectDataView.d.ts +0 -7
- package/dist/types/components/SelectDataView.d.ts.map +0 -1
- package/dist/types/components/SelectEachItem.d.ts +0 -5
- package/dist/types/components/SelectEachItem.d.ts.map +0 -1
- package/dist/types/components/SelectItemTrigger.d.ts +0 -8
- package/dist/types/components/SelectItemTrigger.d.ts.map +0 -1
- package/dist/types/components/SelectNewItem.d.ts +0 -5
- package/dist/types/components/SelectNewItem.d.ts.map +0 -1
- package/dist/types/components/SelectOption.d.ts +0 -7
- package/dist/types/components/SelectOption.d.ts.map +0 -1
- package/dist/types/components/SelectPlaceholder.d.ts +0 -5
- package/dist/types/components/SelectPlaceholder.d.ts.map +0 -1
- package/dist/types/components/SortableMultiSelect.d.ts +0 -18
- package/dist/types/components/SortableMultiSelect.d.ts.map +0 -1
- package/dist/types/components/index.d.ts +0 -10
- package/dist/types/components/index.d.ts.map +0 -1
- package/dist/types/contexts.d.ts +0 -23
- package/dist/types/contexts.d.ts.map +0 -1
- package/dist/types/hooks/index.d.ts +0 -2
- package/dist/types/hooks/index.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -5
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/tsconfig.tsbuildinfo +0 -1
- package/dist/types/types/events.d.ts +0 -6
- package/dist/types/types/events.d.ts.map +0 -1
- package/dist/types/types/index.d.ts +0 -2
- package/dist/types/types/index.d.ts.map +0 -1
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const reactUtils = require("@contember/react-utils");
|
|
4
|
-
const _SelectCurrentEntitiesContext = reactUtils.createRequiredContext("SelectCurrentEntitiesContext");
|
|
5
|
-
const SelectCurrentEntitiesContext = _SelectCurrentEntitiesContext[0];
|
|
6
|
-
const useSelectCurrentEntities = _SelectCurrentEntitiesContext[1];
|
|
7
|
-
const _SelectIsSelectedContext = reactUtils.createRequiredContext("SelectIsSelectedContext");
|
|
8
|
-
const SelectIsSelectedContext = _SelectIsSelectedContext[0];
|
|
9
|
-
const useSelectIsSelected = _SelectIsSelectedContext[1];
|
|
10
|
-
const _SelectHandleSelectContext = reactUtils.createRequiredContext("SelectHandleSelectContext");
|
|
11
|
-
const SelectHandleSelectContext = _SelectHandleSelectContext[0];
|
|
12
|
-
const useSelectHandleSelect = _SelectHandleSelectContext[1];
|
|
13
|
-
const _SelectOptionsContext = reactUtils.createRequiredContext("SelectOptionsContext");
|
|
14
|
-
const SelectOptionsContext = _SelectOptionsContext[0];
|
|
15
|
-
const useSelectOptions = _SelectOptionsContext[1];
|
|
16
|
-
exports.SelectCurrentEntitiesContext = SelectCurrentEntitiesContext;
|
|
17
|
-
exports.SelectHandleSelectContext = SelectHandleSelectContext;
|
|
18
|
-
exports.SelectIsSelectedContext = SelectIsSelectedContext;
|
|
19
|
-
exports.SelectOptionsContext = SelectOptionsContext;
|
|
20
|
-
exports.useSelectCurrentEntities = useSelectCurrentEntities;
|
|
21
|
-
exports.useSelectHandleSelect = useSelectHandleSelect;
|
|
22
|
-
exports.useSelectIsSelected = useSelectIsSelected;
|
|
23
|
-
exports.useSelectOptions = useSelectOptions;
|
|
24
|
-
//# sourceMappingURL=contexts.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"contexts.cjs","sources":["../../../../packages/react-select/src/contexts.ts"],"sourcesContent":["import { createRequiredContext } from '@contember/react-utils'\nimport { EntityAccessor, SugaredQualifiedEntityList } from '@contember/react-binding'\nimport { DataViewFilterHandler, TextFilterArtifacts } from '@contember/react-dataview'\n\nconst _SelectCurrentEntitiesContext = createRequiredContext<EntityAccessor[]>('SelectCurrentEntitiesContext')\n/** @internal */\nexport const SelectCurrentEntitiesContext = _SelectCurrentEntitiesContext[0]\nexport const useSelectCurrentEntities = _SelectCurrentEntitiesContext[1]\n\n\n\nconst _SelectIsSelectedContext = createRequiredContext<(entity: EntityAccessor) => boolean>('SelectIsSelectedContext')\n/** @internal */\nexport const SelectIsSelectedContext = _SelectIsSelectedContext[0]\nexport const useSelectIsSelected = _SelectIsSelectedContext[1]\n\nexport type SelectHandler = (entity: EntityAccessor, action?: 'select' | 'unselect' | 'toggle') => void\nconst _SelectHandleSelectContext = createRequiredContext<SelectHandler>('SelectHandleSelectContext')\n/** @internal */\nexport const SelectHandleSelectContext = _SelectHandleSelectContext[0]\nexport const useSelectHandleSelect = _SelectHandleSelectContext[1]\n\nconst _SelectOptionsContext = createRequiredContext<SugaredQualifiedEntityList['entities']>('SelectOptionsContext')\n/** @internal */\nexport const SelectOptionsContext = _SelectOptionsContext[0]\nexport const useSelectOptions = _SelectOptionsContext[1]\n"],"names":["createRequiredContext"],"mappings":";;;AAIA,MAAM,gCAAgCA,iCAAwC,8BAA8B;AAE/F,MAAA,+BAA+B,8BAA8B,CAAC;AAC9D,MAAA,2BAA2B,8BAA8B,CAAC;AAIvE,MAAM,2BAA2BA,iCAA2D,yBAAyB;AAExG,MAAA,0BAA0B,yBAAyB,CAAC;AACpD,MAAA,sBAAsB,yBAAyB,CAAC;AAG7D,MAAM,6BAA6BA,iCAAqC,2BAA2B;AAEtF,MAAA,4BAA4B,2BAA2B,CAAC;AACxD,MAAA,wBAAwB,2BAA2B,CAAC;AAEjE,MAAM,wBAAwBA,iCAA8D,sBAAsB;AAErG,MAAA,uBAAuB,sBAAsB,CAAC;AAC9C,MAAA,mBAAmB,sBAAsB,CAAC;;;;;;;;;"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { createRequiredContext } from "@contember/react-utils";
|
|
2
|
-
const _SelectCurrentEntitiesContext = createRequiredContext("SelectCurrentEntitiesContext");
|
|
3
|
-
const SelectCurrentEntitiesContext = _SelectCurrentEntitiesContext[0];
|
|
4
|
-
const useSelectCurrentEntities = _SelectCurrentEntitiesContext[1];
|
|
5
|
-
const _SelectIsSelectedContext = createRequiredContext("SelectIsSelectedContext");
|
|
6
|
-
const SelectIsSelectedContext = _SelectIsSelectedContext[0];
|
|
7
|
-
const useSelectIsSelected = _SelectIsSelectedContext[1];
|
|
8
|
-
const _SelectHandleSelectContext = createRequiredContext("SelectHandleSelectContext");
|
|
9
|
-
const SelectHandleSelectContext = _SelectHandleSelectContext[0];
|
|
10
|
-
const useSelectHandleSelect = _SelectHandleSelectContext[1];
|
|
11
|
-
const _SelectOptionsContext = createRequiredContext("SelectOptionsContext");
|
|
12
|
-
const SelectOptionsContext = _SelectOptionsContext[0];
|
|
13
|
-
const useSelectOptions = _SelectOptionsContext[1];
|
|
14
|
-
export {
|
|
15
|
-
SelectCurrentEntitiesContext,
|
|
16
|
-
SelectHandleSelectContext,
|
|
17
|
-
SelectIsSelectedContext,
|
|
18
|
-
SelectOptionsContext,
|
|
19
|
-
useSelectCurrentEntities,
|
|
20
|
-
useSelectHandleSelect,
|
|
21
|
-
useSelectIsSelected,
|
|
22
|
-
useSelectOptions
|
|
23
|
-
};
|
|
24
|
-
//# sourceMappingURL=contexts.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"contexts.js","sources":["../../../../packages/react-select/src/contexts.ts"],"sourcesContent":["import { createRequiredContext } from '@contember/react-utils'\nimport { EntityAccessor, SugaredQualifiedEntityList } from '@contember/react-binding'\nimport { DataViewFilterHandler, TextFilterArtifacts } from '@contember/react-dataview'\n\nconst _SelectCurrentEntitiesContext = createRequiredContext<EntityAccessor[]>('SelectCurrentEntitiesContext')\n/** @internal */\nexport const SelectCurrentEntitiesContext = _SelectCurrentEntitiesContext[0]\nexport const useSelectCurrentEntities = _SelectCurrentEntitiesContext[1]\n\n\n\nconst _SelectIsSelectedContext = createRequiredContext<(entity: EntityAccessor) => boolean>('SelectIsSelectedContext')\n/** @internal */\nexport const SelectIsSelectedContext = _SelectIsSelectedContext[0]\nexport const useSelectIsSelected = _SelectIsSelectedContext[1]\n\nexport type SelectHandler = (entity: EntityAccessor, action?: 'select' | 'unselect' | 'toggle') => void\nconst _SelectHandleSelectContext = createRequiredContext<SelectHandler>('SelectHandleSelectContext')\n/** @internal */\nexport const SelectHandleSelectContext = _SelectHandleSelectContext[0]\nexport const useSelectHandleSelect = _SelectHandleSelectContext[1]\n\nconst _SelectOptionsContext = createRequiredContext<SugaredQualifiedEntityList['entities']>('SelectOptionsContext')\n/** @internal */\nexport const SelectOptionsContext = _SelectOptionsContext[0]\nexport const useSelectOptions = _SelectOptionsContext[1]\n"],"names":[],"mappings":";AAIA,MAAM,gCAAgC,sBAAwC,8BAA8B;AAE/F,MAAA,+BAA+B,8BAA8B,CAAC;AAC9D,MAAA,2BAA2B,8BAA8B,CAAC;AAIvE,MAAM,2BAA2B,sBAA2D,yBAAyB;AAExG,MAAA,0BAA0B,yBAAyB,CAAC;AACpD,MAAA,sBAAsB,yBAAyB,CAAC;AAG7D,MAAM,6BAA6B,sBAAqC,2BAA2B;AAEtF,MAAA,4BAA4B,2BAA2B,CAAC;AACxD,MAAA,wBAAwB,2BAA2B,CAAC;AAEjE,MAAM,wBAAwB,sBAA8D,sBAAsB;AAErG,MAAA,uBAAuB,sBAAsB,CAAC;AAC9C,MAAA,mBAAmB,sBAAsB,CAAC;"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const contexts = require("./src/contexts.cjs");
|
|
4
|
-
const MultiSelect = require("./src/components/MultiSelect.cjs");
|
|
5
|
-
const Select = require("./src/components/Select.cjs");
|
|
6
|
-
const SelectNewItem = require("./src/components/SelectNewItem.cjs");
|
|
7
|
-
const SelectDataView = require("./src/components/SelectDataView.cjs");
|
|
8
|
-
const SelectEachItem = require("./src/components/SelectEachItem.cjs");
|
|
9
|
-
const SelectItemTrigger = require("./src/components/SelectItemTrigger.cjs");
|
|
10
|
-
const SelectOption = require("./src/components/SelectOption.cjs");
|
|
11
|
-
const SelectPlaceholder = require("./src/components/SelectPlaceholder.cjs");
|
|
12
|
-
const SortableMultiSelect = require("./src/components/SortableMultiSelect.cjs");
|
|
13
|
-
exports.SelectCurrentEntitiesContext = contexts.SelectCurrentEntitiesContext;
|
|
14
|
-
exports.SelectHandleSelectContext = contexts.SelectHandleSelectContext;
|
|
15
|
-
exports.SelectIsSelectedContext = contexts.SelectIsSelectedContext;
|
|
16
|
-
exports.SelectOptionsContext = contexts.SelectOptionsContext;
|
|
17
|
-
exports.useSelectCurrentEntities = contexts.useSelectCurrentEntities;
|
|
18
|
-
exports.useSelectHandleSelect = contexts.useSelectHandleSelect;
|
|
19
|
-
exports.useSelectIsSelected = contexts.useSelectIsSelected;
|
|
20
|
-
exports.useSelectOptions = contexts.useSelectOptions;
|
|
21
|
-
exports.MultiSelect = MultiSelect.MultiSelect;
|
|
22
|
-
exports.Select = Select.Select;
|
|
23
|
-
exports.SelectNewItem = SelectNewItem.SelectNewItem;
|
|
24
|
-
exports.SelectDataView = SelectDataView.SelectDataView;
|
|
25
|
-
exports.SelectEachValue = SelectEachItem.SelectEachValue;
|
|
26
|
-
exports.SelectItemTrigger = SelectItemTrigger.SelectItemTrigger;
|
|
27
|
-
exports.SelectOption = SelectOption.SelectOption;
|
|
28
|
-
exports.SelectPlaceholder = SelectPlaceholder.SelectPlaceholder;
|
|
29
|
-
exports.SortableMultiSelect = SortableMultiSelect.SortableMultiSelect;
|
|
30
|
-
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/production/index.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { SelectCurrentEntitiesContext, SelectHandleSelectContext, SelectIsSelectedContext, SelectOptionsContext, useSelectCurrentEntities, useSelectHandleSelect, useSelectIsSelected, useSelectOptions } from "./src/contexts.js";
|
|
2
|
-
import { MultiSelect } from "./src/components/MultiSelect.js";
|
|
3
|
-
import { Select } from "./src/components/Select.js";
|
|
4
|
-
import { SelectNewItem } from "./src/components/SelectNewItem.js";
|
|
5
|
-
import { SelectDataView } from "./src/components/SelectDataView.js";
|
|
6
|
-
import { SelectEachValue } from "./src/components/SelectEachItem.js";
|
|
7
|
-
import { SelectItemTrigger } from "./src/components/SelectItemTrigger.js";
|
|
8
|
-
import { SelectOption } from "./src/components/SelectOption.js";
|
|
9
|
-
import { SelectPlaceholder } from "./src/components/SelectPlaceholder.js";
|
|
10
|
-
import { SortableMultiSelect } from "./src/components/SortableMultiSelect.js";
|
|
11
|
-
export {
|
|
12
|
-
MultiSelect,
|
|
13
|
-
Select,
|
|
14
|
-
SelectCurrentEntitiesContext,
|
|
15
|
-
SelectDataView,
|
|
16
|
-
SelectEachValue,
|
|
17
|
-
SelectHandleSelectContext,
|
|
18
|
-
SelectIsSelectedContext,
|
|
19
|
-
SelectItemTrigger,
|
|
20
|
-
SelectNewItem,
|
|
21
|
-
SelectOption,
|
|
22
|
-
SelectOptionsContext,
|
|
23
|
-
SelectPlaceholder,
|
|
24
|
-
SortableMultiSelect,
|
|
25
|
-
useSelectCurrentEntities,
|
|
26
|
-
useSelectHandleSelect,
|
|
27
|
-
useSelectIsSelected,
|
|
28
|
-
useSelectOptions
|
|
29
|
-
};
|
|
30
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
-
const React = require("react");
|
|
5
|
-
const contexts = require("../contexts.cjs");
|
|
6
|
-
const reactBinding = require("@contember/react-binding");
|
|
7
|
-
const reactUtils = require("@contember/react-utils");
|
|
8
|
-
const MultiSelect = reactBinding.Component(({ field, children, options, onSelect, onUnselect }) => {
|
|
9
|
-
const entities = reactBinding.useEntityList({ field });
|
|
10
|
-
options ?? (options = entities.name);
|
|
11
|
-
const entitiesArr = React.useMemo(() => Array.from(entities), [entities]);
|
|
12
|
-
const selectedEntities = React.useMemo(() => Array.from(entities).map((it) => it.id), [entities]);
|
|
13
|
-
const handler = reactUtils.useReferentiallyStableCallback((entity, action = "toggle") => {
|
|
14
|
-
const isSelected2 = selectedEntities.includes(entity.id);
|
|
15
|
-
if (action === "toggle") {
|
|
16
|
-
action = isSelected2 ? "unselect" : "select";
|
|
17
|
-
}
|
|
18
|
-
if (action === "unselect" && isSelected2) {
|
|
19
|
-
entities.disconnectEntity(entity);
|
|
20
|
-
onUnselect?.(entity);
|
|
21
|
-
} else if (action === "select" && !isSelected2) {
|
|
22
|
-
entities.connectEntity(entity);
|
|
23
|
-
onSelect?.(entity);
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
const isSelected = React.useCallback((entity) => {
|
|
27
|
-
return selectedEntities.includes(entity.id);
|
|
28
|
-
}, [selectedEntities]);
|
|
29
|
-
return /* @__PURE__ */ jsxRuntime.jsx(contexts.SelectCurrentEntitiesContext.Provider, { value: entitiesArr, children: /* @__PURE__ */ jsxRuntime.jsx(contexts.SelectIsSelectedContext.Provider, { value: isSelected, children: /* @__PURE__ */ jsxRuntime.jsx(contexts.SelectHandleSelectContext.Provider, { value: handler, children: /* @__PURE__ */ jsxRuntime.jsx(contexts.SelectOptionsContext.Provider, { value: options, children }) }) }) });
|
|
30
|
-
}, ({ field, children }) => {
|
|
31
|
-
return /* @__PURE__ */ jsxRuntime.jsx(reactBinding.HasMany, { field, expectedMutation: "connectOrDisconnect", children });
|
|
32
|
-
});
|
|
33
|
-
exports.MultiSelect = MultiSelect;
|
|
34
|
-
//# sourceMappingURL=MultiSelect.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MultiSelect.cjs","sources":["../../../../../packages/react-select/src/components/MultiSelect.tsx"],"sourcesContent":["import React, { ReactNode, useCallback, useMemo } from 'react'\nimport { SelectCurrentEntitiesContext, SelectHandler, SelectHandleSelectContext, SelectIsSelectedContext, SelectOptionsContext } from '../contexts'\nimport { Component, EntityAccessor, HasMany, SugaredQualifiedEntityList, SugaredRelativeEntityList, useEntityList } from '@contember/react-binding'\nimport { useReferentiallyStableCallback } from '@contember/react-utils'\nimport { SelectEvents } from '../types'\n\nexport type MultiSelectProps =\n\t& {\n\t\tchildren: ReactNode\n\t\tfield: SugaredRelativeEntityList['field']\n\t\toptions?: SugaredQualifiedEntityList['entities']\n\t}\n\t& SelectEvents\n\nexport const MultiSelect = Component(({ field, children, options, onSelect, onUnselect }: MultiSelectProps) => {\n\tconst entities = useEntityList({ field })\n\toptions ??= entities.name\n\tconst entitiesArr = useMemo(() => Array.from(entities), [entities])\n\tconst selectedEntities = useMemo(() => Array.from(entities).map(it => it.id), [entities])\n\n\tconst handler = useReferentiallyStableCallback<SelectHandler>((entity, action = 'toggle') => {\n\t\tconst isSelected = selectedEntities.includes(entity.id)\n\t\tif (action === 'toggle') {\n\t\t\taction = isSelected ? 'unselect' : 'select'\n\t\t}\n\t\tif (action === 'unselect' && isSelected) {\n\t\t\tentities.disconnectEntity(entity)\n\t\t\tonUnselect?.(entity)\n\t\t} else if (action === 'select' && !isSelected) {\n\t\t\tentities.connectEntity(entity)\n\t\t\tonSelect?.(entity)\n\t\t}\n\t})\n\tconst isSelected = useCallback((entity: EntityAccessor) => {\n\t\treturn selectedEntities.includes(entity.id)\n\t}, [selectedEntities])\n\n\treturn (\n\t\t<SelectCurrentEntitiesContext.Provider value={entitiesArr}>\n\t\t\t<SelectIsSelectedContext.Provider value={isSelected}>\n\t\t\t\t<SelectHandleSelectContext.Provider value={handler}>\n\t\t\t\t\t<SelectOptionsContext.Provider value={options}>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</SelectOptionsContext.Provider>\n\t\t\t\t</SelectHandleSelectContext.Provider>\n\t\t\t</SelectIsSelectedContext.Provider>\n\t\t</SelectCurrentEntitiesContext.Provider>\n\t)\n}, ({ field, children }) => {\n\treturn (\n\t\t<HasMany field={field} expectedMutation=\"connectOrDisconnect\">\n\t\t\t{children}\n\t\t</HasMany>\n\t)\n})\n\n"],"names":["Component","useEntityList","useMemo","useReferentiallyStableCallback","isSelected","useCallback","jsx","SelectCurrentEntitiesContext","SelectIsSelectedContext","SelectHandleSelectContext","SelectOptionsContext","HasMany"],"mappings":";;;;;;;AAca,MAAA,cAAcA,aAAAA,UAAU,CAAC,EAAE,OAAO,UAAU,SAAS,UAAU,iBAAmC;AAC9G,QAAM,WAAWC,aAAAA,cAAc,EAAE,OAAO;AACxC,cAAA,UAAY,SAAS;AACf,QAAA,cAAcC,cAAQ,MAAM,MAAM,KAAK,QAAQ,GAAG,CAAC,QAAQ,CAAC;AAClE,QAAM,mBAAmBA,MAAA,QAAQ,MAAM,MAAM,KAAK,QAAQ,EAAE,IAAI,CAAA,OAAM,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC;AAExF,QAAM,UAAUC,WAAA,+BAA8C,CAAC,QAAQ,SAAS,aAAa;AAC5F,UAAMC,cAAa,iBAAiB,SAAS,OAAO,EAAE;AACtD,QAAI,WAAW,UAAU;AACxB,eAASA,cAAa,aAAa;AAAA,IAAA;AAEhC,QAAA,WAAW,cAAcA,aAAY;AACxC,eAAS,iBAAiB,MAAM;AAChC,mBAAa,MAAM;AAAA,IACT,WAAA,WAAW,YAAY,CAACA,aAAY;AAC9C,eAAS,cAAc,MAAM;AAC7B,iBAAW,MAAM;AAAA,IAAA;AAAA,EAClB,CACA;AACK,QAAA,aAAaC,kBAAY,CAAC,WAA2B;AACnD,WAAA,iBAAiB,SAAS,OAAO,EAAE;AAAA,EAAA,GACxC,CAAC,gBAAgB,CAAC;AAGpB,SAAAC,2BAAA,IAACC,SAA6B,6BAAA,UAA7B,EAAsC,OAAO,aAC7C,UAAAD,2BAAAA,IAACE,SAAAA,wBAAwB,UAAxB,EAAiC,OAAO,YACxC,UAAAF,2BAAA,IAACG,SAA0B,0BAAA,UAA1B,EAAmC,OAAO,SAC1C,UAAAH,2BAAAA,IAACI,SAAAA,qBAAqB,UAArB,EAA8B,OAAO,SACpC,SAAA,CACF,EACD,CAAA,EAAA,CACD,EACD,CAAA;AAEF,GAAG,CAAC,EAAE,OAAO,eAAe;AAC3B,SACEJ,2BAAAA,IAAAK,aAAAA,SAAA,EAAQ,OAAc,kBAAiB,uBACtC,UACF;AAEF,CAAC;;"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useMemo, useCallback } from "react";
|
|
3
|
-
import { SelectCurrentEntitiesContext, SelectIsSelectedContext, SelectHandleSelectContext, SelectOptionsContext } from "../contexts.js";
|
|
4
|
-
import { Component, useEntityList, HasMany } from "@contember/react-binding";
|
|
5
|
-
import { useReferentiallyStableCallback } from "@contember/react-utils";
|
|
6
|
-
const MultiSelect = Component(({ field, children, options, onSelect, onUnselect }) => {
|
|
7
|
-
const entities = useEntityList({ field });
|
|
8
|
-
options ?? (options = entities.name);
|
|
9
|
-
const entitiesArr = useMemo(() => Array.from(entities), [entities]);
|
|
10
|
-
const selectedEntities = useMemo(() => Array.from(entities).map((it) => it.id), [entities]);
|
|
11
|
-
const handler = useReferentiallyStableCallback((entity, action = "toggle") => {
|
|
12
|
-
const isSelected2 = selectedEntities.includes(entity.id);
|
|
13
|
-
if (action === "toggle") {
|
|
14
|
-
action = isSelected2 ? "unselect" : "select";
|
|
15
|
-
}
|
|
16
|
-
if (action === "unselect" && isSelected2) {
|
|
17
|
-
entities.disconnectEntity(entity);
|
|
18
|
-
onUnselect?.(entity);
|
|
19
|
-
} else if (action === "select" && !isSelected2) {
|
|
20
|
-
entities.connectEntity(entity);
|
|
21
|
-
onSelect?.(entity);
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
const isSelected = useCallback((entity) => {
|
|
25
|
-
return selectedEntities.includes(entity.id);
|
|
26
|
-
}, [selectedEntities]);
|
|
27
|
-
return /* @__PURE__ */ jsx(SelectCurrentEntitiesContext.Provider, { value: entitiesArr, children: /* @__PURE__ */ jsx(SelectIsSelectedContext.Provider, { value: isSelected, children: /* @__PURE__ */ jsx(SelectHandleSelectContext.Provider, { value: handler, children: /* @__PURE__ */ jsx(SelectOptionsContext.Provider, { value: options, children }) }) }) });
|
|
28
|
-
}, ({ field, children }) => {
|
|
29
|
-
return /* @__PURE__ */ jsx(HasMany, { field, expectedMutation: "connectOrDisconnect", children });
|
|
30
|
-
});
|
|
31
|
-
export {
|
|
32
|
-
MultiSelect
|
|
33
|
-
};
|
|
34
|
-
//# sourceMappingURL=MultiSelect.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MultiSelect.js","sources":["../../../../../packages/react-select/src/components/MultiSelect.tsx"],"sourcesContent":["import React, { ReactNode, useCallback, useMemo } from 'react'\nimport { SelectCurrentEntitiesContext, SelectHandler, SelectHandleSelectContext, SelectIsSelectedContext, SelectOptionsContext } from '../contexts'\nimport { Component, EntityAccessor, HasMany, SugaredQualifiedEntityList, SugaredRelativeEntityList, useEntityList } from '@contember/react-binding'\nimport { useReferentiallyStableCallback } from '@contember/react-utils'\nimport { SelectEvents } from '../types'\n\nexport type MultiSelectProps =\n\t& {\n\t\tchildren: ReactNode\n\t\tfield: SugaredRelativeEntityList['field']\n\t\toptions?: SugaredQualifiedEntityList['entities']\n\t}\n\t& SelectEvents\n\nexport const MultiSelect = Component(({ field, children, options, onSelect, onUnselect }: MultiSelectProps) => {\n\tconst entities = useEntityList({ field })\n\toptions ??= entities.name\n\tconst entitiesArr = useMemo(() => Array.from(entities), [entities])\n\tconst selectedEntities = useMemo(() => Array.from(entities).map(it => it.id), [entities])\n\n\tconst handler = useReferentiallyStableCallback<SelectHandler>((entity, action = 'toggle') => {\n\t\tconst isSelected = selectedEntities.includes(entity.id)\n\t\tif (action === 'toggle') {\n\t\t\taction = isSelected ? 'unselect' : 'select'\n\t\t}\n\t\tif (action === 'unselect' && isSelected) {\n\t\t\tentities.disconnectEntity(entity)\n\t\t\tonUnselect?.(entity)\n\t\t} else if (action === 'select' && !isSelected) {\n\t\t\tentities.connectEntity(entity)\n\t\t\tonSelect?.(entity)\n\t\t}\n\t})\n\tconst isSelected = useCallback((entity: EntityAccessor) => {\n\t\treturn selectedEntities.includes(entity.id)\n\t}, [selectedEntities])\n\n\treturn (\n\t\t<SelectCurrentEntitiesContext.Provider value={entitiesArr}>\n\t\t\t<SelectIsSelectedContext.Provider value={isSelected}>\n\t\t\t\t<SelectHandleSelectContext.Provider value={handler}>\n\t\t\t\t\t<SelectOptionsContext.Provider value={options}>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</SelectOptionsContext.Provider>\n\t\t\t\t</SelectHandleSelectContext.Provider>\n\t\t\t</SelectIsSelectedContext.Provider>\n\t\t</SelectCurrentEntitiesContext.Provider>\n\t)\n}, ({ field, children }) => {\n\treturn (\n\t\t<HasMany field={field} expectedMutation=\"connectOrDisconnect\">\n\t\t\t{children}\n\t\t</HasMany>\n\t)\n})\n\n"],"names":["isSelected"],"mappings":";;;;;AAca,MAAA,cAAc,UAAU,CAAC,EAAE,OAAO,UAAU,SAAS,UAAU,iBAAmC;AAC9G,QAAM,WAAW,cAAc,EAAE,OAAO;AACxC,cAAA,UAAY,SAAS;AACf,QAAA,cAAc,QAAQ,MAAM,MAAM,KAAK,QAAQ,GAAG,CAAC,QAAQ,CAAC;AAClE,QAAM,mBAAmB,QAAQ,MAAM,MAAM,KAAK,QAAQ,EAAE,IAAI,CAAA,OAAM,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC;AAExF,QAAM,UAAU,+BAA8C,CAAC,QAAQ,SAAS,aAAa;AAC5F,UAAMA,cAAa,iBAAiB,SAAS,OAAO,EAAE;AACtD,QAAI,WAAW,UAAU;AACxB,eAASA,cAAa,aAAa;AAAA,IAAA;AAEhC,QAAA,WAAW,cAAcA,aAAY;AACxC,eAAS,iBAAiB,MAAM;AAChC,mBAAa,MAAM;AAAA,IACT,WAAA,WAAW,YAAY,CAACA,aAAY;AAC9C,eAAS,cAAc,MAAM;AAC7B,iBAAW,MAAM;AAAA,IAAA;AAAA,EAClB,CACA;AACK,QAAA,aAAa,YAAY,CAAC,WAA2B;AACnD,WAAA,iBAAiB,SAAS,OAAO,EAAE;AAAA,EAAA,GACxC,CAAC,gBAAgB,CAAC;AAGpB,SAAA,oBAAC,6BAA6B,UAA7B,EAAsC,OAAO,aAC7C,UAAA,oBAAC,wBAAwB,UAAxB,EAAiC,OAAO,YACxC,UAAA,oBAAC,0BAA0B,UAA1B,EAAmC,OAAO,SAC1C,UAAA,oBAAC,qBAAqB,UAArB,EAA8B,OAAO,SACpC,SAAA,CACF,EACD,CAAA,EAAA,CACD,EACD,CAAA;AAEF,GAAG,CAAC,EAAE,OAAO,eAAe;AAC3B,SACE,oBAAA,SAAA,EAAQ,OAAc,kBAAiB,uBACtC,UACF;AAEF,CAAC;"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
-
const React = require("react");
|
|
5
|
-
const contexts = require("../contexts.cjs");
|
|
6
|
-
const reactBinding = require("@contember/react-binding");
|
|
7
|
-
const reactUtils = require("@contember/react-utils");
|
|
8
|
-
const Select = reactBinding.Component(({ field, children, onUnselect, onSelect, options }) => {
|
|
9
|
-
const entity = reactBinding.useEntity();
|
|
10
|
-
const selectedEntity = entity.getEntity({ field });
|
|
11
|
-
options ?? (options = selectedEntity.name);
|
|
12
|
-
const entityExists = selectedEntity.existsOnServer || selectedEntity.hasUnpersistedChanges;
|
|
13
|
-
const entitiesArr = React.useMemo(() => entityExists ? [selectedEntity] : [], [entityExists, selectedEntity]);
|
|
14
|
-
const handleSelect = reactUtils.useReferentiallyStableCallback((selected, action = "toggle") => {
|
|
15
|
-
if (action === "toggle") {
|
|
16
|
-
action = selected.id === selectedEntity.id ? "unselect" : "select";
|
|
17
|
-
}
|
|
18
|
-
if (action === "unselect") {
|
|
19
|
-
entity.disconnectEntityAtField({ field });
|
|
20
|
-
onUnselect?.(selected);
|
|
21
|
-
} else if (action === "select") {
|
|
22
|
-
entity.connectEntityAtField({ field }, selected);
|
|
23
|
-
onSelect?.(selected);
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
const isSelected = React.useCallback((entity2) => entity2.id === selectedEntity.id, [selectedEntity.id]);
|
|
27
|
-
return /* @__PURE__ */ jsxRuntime.jsx(contexts.SelectCurrentEntitiesContext.Provider, { value: entitiesArr, children: /* @__PURE__ */ jsxRuntime.jsx(contexts.SelectIsSelectedContext.Provider, { value: isSelected, children: /* @__PURE__ */ jsxRuntime.jsx(contexts.SelectHandleSelectContext.Provider, { value: handleSelect, children: /* @__PURE__ */ jsxRuntime.jsx(contexts.SelectOptionsContext.Provider, { value: options, children }) }) }) });
|
|
28
|
-
}, ({ field, children, isNonbearing }) => {
|
|
29
|
-
return /* @__PURE__ */ jsxRuntime.jsx(reactBinding.HasOne, { field, expectedMutation: "connectOrDisconnect", isNonbearing, children });
|
|
30
|
-
});
|
|
31
|
-
exports.Select = Select;
|
|
32
|
-
//# sourceMappingURL=Select.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Select.cjs","sources":["../../../../../packages/react-select/src/components/Select.tsx"],"sourcesContent":["import React, { ReactNode, useCallback, useMemo } from 'react'\nimport { SelectCurrentEntitiesContext, SelectHandler, SelectHandleSelectContext, SelectIsSelectedContext, SelectOptionsContext } from '../contexts'\nimport { Component, EntityAccessor, HasOne, SugaredQualifiedEntityList, SugaredRelativeSingleEntity, useEntity } from '@contember/react-binding'\nimport { useReferentiallyStableCallback } from '@contember/react-utils'\nimport { SelectEvents } from '../types'\n\nexport type SelectProps =\n\t& {\n\t\tchildren: ReactNode\n\t\tfield: SugaredRelativeSingleEntity['field']\n\t\toptions?: SugaredQualifiedEntityList['entities']\n\t\tisNonbearing?: boolean\n\t}\n\t& SelectEvents\n\nexport const Select = Component(({ field, children, onUnselect, onSelect, options }: SelectProps) => {\n\tconst entity = useEntity()\n\tconst selectedEntity = entity.getEntity({ field })\n\toptions ??= selectedEntity.name\n\n\tconst entityExists = selectedEntity.existsOnServer || selectedEntity.hasUnpersistedChanges\n\tconst entitiesArr = useMemo(() => entityExists ? [selectedEntity] : [], [entityExists, selectedEntity])\n\n\tconst handleSelect = useReferentiallyStableCallback<SelectHandler>((selected, action = 'toggle') => {\n\t\tif (action === 'toggle') {\n\t\t\taction = selected.id === selectedEntity.id ? 'unselect' : 'select'\n\t\t}\n\t\tif (action === 'unselect') {\n\t\t\tentity.disconnectEntityAtField({ field })\n\t\t\tonUnselect?.(selected)\n\t\t} else if (action === 'select') {\n\t\t\tentity.connectEntityAtField({ field }, selected)\n\t\t\tonSelect?.(selected)\n\t\t}\n\t})\n\tconst isSelected = useCallback((entity: EntityAccessor) => entity.id === selectedEntity.id, [selectedEntity.id])\n\n\treturn (\n\t\t<SelectCurrentEntitiesContext.Provider value={entitiesArr}>\n\t\t\t<SelectIsSelectedContext.Provider value={isSelected}>\n\t\t\t\t<SelectHandleSelectContext.Provider value={handleSelect}>\n\t\t\t\t\t<SelectOptionsContext.Provider value={options}>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</SelectOptionsContext.Provider>\n\t\t\t\t</SelectHandleSelectContext.Provider>\n\t\t\t</SelectIsSelectedContext.Provider>\n\t\t</SelectCurrentEntitiesContext.Provider>\n\t)\n}, ({ field, children, isNonbearing }) => {\n\treturn (\n\t\t<HasOne field={field} expectedMutation=\"connectOrDisconnect\" isNonbearing={isNonbearing}>\n\t\t\t{children}\n\t\t</HasOne>\n\t)\n})\n\n"],"names":["Component","useEntity","useMemo","useReferentiallyStableCallback","useCallback","entity","jsx","SelectCurrentEntitiesContext","SelectIsSelectedContext","SelectHandleSelectContext","SelectOptionsContext","HasOne"],"mappings":";;;;;;;AAea,MAAA,SAASA,aAAAA,UAAU,CAAC,EAAE,OAAO,UAAU,YAAY,UAAU,cAA2B;AACpG,QAAM,SAASC,aAAAA,UAAU;AACzB,QAAM,iBAAiB,OAAO,UAAU,EAAE,OAAO;AACjD,cAAA,UAAY,eAAe;AAErB,QAAA,eAAe,eAAe,kBAAkB,eAAe;AACrE,QAAM,cAAcC,cAAQ,MAAM,eAAe,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,cAAc,CAAC;AAEtG,QAAM,eAAeC,WAAA,+BAA8C,CAAC,UAAU,SAAS,aAAa;AACnG,QAAI,WAAW,UAAU;AACxB,eAAS,SAAS,OAAO,eAAe,KAAK,aAAa;AAAA,IAAA;AAE3D,QAAI,WAAW,YAAY;AACnB,aAAA,wBAAwB,EAAE,OAAO;AACxC,mBAAa,QAAQ;AAAA,IAAA,WACX,WAAW,UAAU;AAC/B,aAAO,qBAAqB,EAAE,MAAM,GAAG,QAAQ;AAC/C,iBAAW,QAAQ;AAAA,IAAA;AAAA,EACpB,CACA;AACK,QAAA,aAAaC,MAAAA,YAAY,CAACC,YAA2BA,QAAO,OAAO,eAAe,IAAI,CAAC,eAAe,EAAE,CAAC;AAG9G,SAAAC,2BAAA,IAACC,SAA6B,6BAAA,UAA7B,EAAsC,OAAO,aAC7C,UAAAD,2BAAAA,IAACE,SAAAA,wBAAwB,UAAxB,EAAiC,OAAO,YACxC,UAAAF,2BAAA,IAACG,SAA0B,0BAAA,UAA1B,EAAmC,OAAO,cAC1C,UAAAH,2BAAAA,IAACI,SAAAA,qBAAqB,UAArB,EAA8B,OAAO,SACpC,SAAA,CACF,EACD,CAAA,EAAA,CACD,EACD,CAAA;AAEF,GAAG,CAAC,EAAE,OAAO,UAAU,mBAAmB;AACzC,wCACEC,aAAO,QAAA,EAAA,OAAc,kBAAiB,uBAAsB,cAC3D,UACF;AAEF,CAAC;;"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useMemo, useCallback } from "react";
|
|
3
|
-
import { SelectCurrentEntitiesContext, SelectIsSelectedContext, SelectHandleSelectContext, SelectOptionsContext } from "../contexts.js";
|
|
4
|
-
import { Component, useEntity, HasOne } from "@contember/react-binding";
|
|
5
|
-
import { useReferentiallyStableCallback } from "@contember/react-utils";
|
|
6
|
-
const Select = Component(({ field, children, onUnselect, onSelect, options }) => {
|
|
7
|
-
const entity = useEntity();
|
|
8
|
-
const selectedEntity = entity.getEntity({ field });
|
|
9
|
-
options ?? (options = selectedEntity.name);
|
|
10
|
-
const entityExists = selectedEntity.existsOnServer || selectedEntity.hasUnpersistedChanges;
|
|
11
|
-
const entitiesArr = useMemo(() => entityExists ? [selectedEntity] : [], [entityExists, selectedEntity]);
|
|
12
|
-
const handleSelect = useReferentiallyStableCallback((selected, action = "toggle") => {
|
|
13
|
-
if (action === "toggle") {
|
|
14
|
-
action = selected.id === selectedEntity.id ? "unselect" : "select";
|
|
15
|
-
}
|
|
16
|
-
if (action === "unselect") {
|
|
17
|
-
entity.disconnectEntityAtField({ field });
|
|
18
|
-
onUnselect?.(selected);
|
|
19
|
-
} else if (action === "select") {
|
|
20
|
-
entity.connectEntityAtField({ field }, selected);
|
|
21
|
-
onSelect?.(selected);
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
const isSelected = useCallback((entity2) => entity2.id === selectedEntity.id, [selectedEntity.id]);
|
|
25
|
-
return /* @__PURE__ */ jsx(SelectCurrentEntitiesContext.Provider, { value: entitiesArr, children: /* @__PURE__ */ jsx(SelectIsSelectedContext.Provider, { value: isSelected, children: /* @__PURE__ */ jsx(SelectHandleSelectContext.Provider, { value: handleSelect, children: /* @__PURE__ */ jsx(SelectOptionsContext.Provider, { value: options, children }) }) }) });
|
|
26
|
-
}, ({ field, children, isNonbearing }) => {
|
|
27
|
-
return /* @__PURE__ */ jsx(HasOne, { field, expectedMutation: "connectOrDisconnect", isNonbearing, children });
|
|
28
|
-
});
|
|
29
|
-
export {
|
|
30
|
-
Select
|
|
31
|
-
};
|
|
32
|
-
//# sourceMappingURL=Select.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Select.js","sources":["../../../../../packages/react-select/src/components/Select.tsx"],"sourcesContent":["import React, { ReactNode, useCallback, useMemo } from 'react'\nimport { SelectCurrentEntitiesContext, SelectHandler, SelectHandleSelectContext, SelectIsSelectedContext, SelectOptionsContext } from '../contexts'\nimport { Component, EntityAccessor, HasOne, SugaredQualifiedEntityList, SugaredRelativeSingleEntity, useEntity } from '@contember/react-binding'\nimport { useReferentiallyStableCallback } from '@contember/react-utils'\nimport { SelectEvents } from '../types'\n\nexport type SelectProps =\n\t& {\n\t\tchildren: ReactNode\n\t\tfield: SugaredRelativeSingleEntity['field']\n\t\toptions?: SugaredQualifiedEntityList['entities']\n\t\tisNonbearing?: boolean\n\t}\n\t& SelectEvents\n\nexport const Select = Component(({ field, children, onUnselect, onSelect, options }: SelectProps) => {\n\tconst entity = useEntity()\n\tconst selectedEntity = entity.getEntity({ field })\n\toptions ??= selectedEntity.name\n\n\tconst entityExists = selectedEntity.existsOnServer || selectedEntity.hasUnpersistedChanges\n\tconst entitiesArr = useMemo(() => entityExists ? [selectedEntity] : [], [entityExists, selectedEntity])\n\n\tconst handleSelect = useReferentiallyStableCallback<SelectHandler>((selected, action = 'toggle') => {\n\t\tif (action === 'toggle') {\n\t\t\taction = selected.id === selectedEntity.id ? 'unselect' : 'select'\n\t\t}\n\t\tif (action === 'unselect') {\n\t\t\tentity.disconnectEntityAtField({ field })\n\t\t\tonUnselect?.(selected)\n\t\t} else if (action === 'select') {\n\t\t\tentity.connectEntityAtField({ field }, selected)\n\t\t\tonSelect?.(selected)\n\t\t}\n\t})\n\tconst isSelected = useCallback((entity: EntityAccessor) => entity.id === selectedEntity.id, [selectedEntity.id])\n\n\treturn (\n\t\t<SelectCurrentEntitiesContext.Provider value={entitiesArr}>\n\t\t\t<SelectIsSelectedContext.Provider value={isSelected}>\n\t\t\t\t<SelectHandleSelectContext.Provider value={handleSelect}>\n\t\t\t\t\t<SelectOptionsContext.Provider value={options}>\n\t\t\t\t\t\t{children}\n\t\t\t\t\t</SelectOptionsContext.Provider>\n\t\t\t\t</SelectHandleSelectContext.Provider>\n\t\t\t</SelectIsSelectedContext.Provider>\n\t\t</SelectCurrentEntitiesContext.Provider>\n\t)\n}, ({ field, children, isNonbearing }) => {\n\treturn (\n\t\t<HasOne field={field} expectedMutation=\"connectOrDisconnect\" isNonbearing={isNonbearing}>\n\t\t\t{children}\n\t\t</HasOne>\n\t)\n})\n\n"],"names":["entity"],"mappings":";;;;;AAea,MAAA,SAAS,UAAU,CAAC,EAAE,OAAO,UAAU,YAAY,UAAU,cAA2B;AACpG,QAAM,SAAS,UAAU;AACzB,QAAM,iBAAiB,OAAO,UAAU,EAAE,OAAO;AACjD,cAAA,UAAY,eAAe;AAErB,QAAA,eAAe,eAAe,kBAAkB,eAAe;AACrE,QAAM,cAAc,QAAQ,MAAM,eAAe,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,cAAc,CAAC;AAEtG,QAAM,eAAe,+BAA8C,CAAC,UAAU,SAAS,aAAa;AACnG,QAAI,WAAW,UAAU;AACxB,eAAS,SAAS,OAAO,eAAe,KAAK,aAAa;AAAA,IAAA;AAE3D,QAAI,WAAW,YAAY;AACnB,aAAA,wBAAwB,EAAE,OAAO;AACxC,mBAAa,QAAQ;AAAA,IAAA,WACX,WAAW,UAAU;AAC/B,aAAO,qBAAqB,EAAE,MAAM,GAAG,QAAQ;AAC/C,iBAAW,QAAQ;AAAA,IAAA;AAAA,EACpB,CACA;AACK,QAAA,aAAa,YAAY,CAACA,YAA2BA,QAAO,OAAO,eAAe,IAAI,CAAC,eAAe,EAAE,CAAC;AAG9G,SAAA,oBAAC,6BAA6B,UAA7B,EAAsC,OAAO,aAC7C,UAAA,oBAAC,wBAAwB,UAAxB,EAAiC,OAAO,YACxC,UAAA,oBAAC,0BAA0B,UAA1B,EAAmC,OAAO,cAC1C,UAAA,oBAAC,qBAAqB,UAArB,EAA8B,OAAO,SACpC,SAAA,CACF,EACD,CAAA,EAAA,CACD,EACD,CAAA;AAEF,GAAG,CAAC,EAAE,OAAO,UAAU,mBAAmB;AACzC,6BACE,QAAO,EAAA,OAAc,kBAAiB,uBAAsB,cAC3D,UACF;AAEF,CAAC;"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
-
const contexts = require("../contexts.cjs");
|
|
5
|
-
const reactDataview = require("@contember/react-dataview");
|
|
6
|
-
const SelectDataView = (props) => {
|
|
7
|
-
const handleSelect = contexts.useSelectHandleSelect();
|
|
8
|
-
const entities = contexts.useSelectOptions();
|
|
9
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
10
|
-
reactDataview.DataView,
|
|
11
|
-
{
|
|
12
|
-
onSelectHighlighted: handleSelect,
|
|
13
|
-
entities,
|
|
14
|
-
filteringStateStorage: "null",
|
|
15
|
-
sortingStateStorage: "null",
|
|
16
|
-
currentPageStateStorage: "null",
|
|
17
|
-
...props
|
|
18
|
-
}
|
|
19
|
-
);
|
|
20
|
-
};
|
|
21
|
-
exports.SelectDataView = SelectDataView;
|
|
22
|
-
//# sourceMappingURL=SelectDataView.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SelectDataView.cjs","sources":["../../../../../packages/react-select/src/components/SelectDataView.tsx"],"sourcesContent":["import React, { ReactNode, useMemo } from 'react'\nimport { useSelectHandleSelect, useSelectOptions } from '../contexts'\nimport { DataViewProps, DataView, DataViewFilterHandlerRegistry } from '@contember/react-dataview'\n\nexport type SelectDataViewProps =\n\t& Omit<DataViewProps, 'entities'>\n\t& {\n\t\tchildren: ReactNode\n\t}\n\nexport const SelectDataView = (props: SelectDataViewProps) => {\n\tconst handleSelect = useSelectHandleSelect()\n\tconst entities = useSelectOptions()\n\n\treturn (\n\t\t<DataView\n\t\t\tonSelectHighlighted={handleSelect}\n\t\t\tentities={entities}\n\t\t\tfilteringStateStorage=\"null\"\n\t\t\tsortingStateStorage=\"null\"\n\t\t\tcurrentPageStateStorage=\"null\"\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n"],"names":["useSelectHandleSelect","useSelectOptions","jsx","DataView"],"mappings":";;;;;AAUa,MAAA,iBAAiB,CAAC,UAA+B;AAC7D,QAAM,eAAeA,SAAAA,sBAAsB;AAC3C,QAAM,WAAWC,SAAAA,iBAAiB;AAGjC,SAAAC,2BAAA;AAAA,IAACC,cAAA;AAAA,IAAA;AAAA,MACA,qBAAqB;AAAA,MACrB;AAAA,MACA,uBAAsB;AAAA,MACtB,qBAAoB;AAAA,MACpB,yBAAwB;AAAA,MACvB,GAAG;AAAA,IAAA;AAAA,EACL;AAEF;;"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useSelectHandleSelect, useSelectOptions } from "../contexts.js";
|
|
3
|
-
import { DataView } from "@contember/react-dataview";
|
|
4
|
-
const SelectDataView = (props) => {
|
|
5
|
-
const handleSelect = useSelectHandleSelect();
|
|
6
|
-
const entities = useSelectOptions();
|
|
7
|
-
return /* @__PURE__ */ jsx(
|
|
8
|
-
DataView,
|
|
9
|
-
{
|
|
10
|
-
onSelectHighlighted: handleSelect,
|
|
11
|
-
entities,
|
|
12
|
-
filteringStateStorage: "null",
|
|
13
|
-
sortingStateStorage: "null",
|
|
14
|
-
currentPageStateStorage: "null",
|
|
15
|
-
...props
|
|
16
|
-
}
|
|
17
|
-
);
|
|
18
|
-
};
|
|
19
|
-
export {
|
|
20
|
-
SelectDataView
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=SelectDataView.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SelectDataView.js","sources":["../../../../../packages/react-select/src/components/SelectDataView.tsx"],"sourcesContent":["import React, { ReactNode, useMemo } from 'react'\nimport { useSelectHandleSelect, useSelectOptions } from '../contexts'\nimport { DataViewProps, DataView, DataViewFilterHandlerRegistry } from '@contember/react-dataview'\n\nexport type SelectDataViewProps =\n\t& Omit<DataViewProps, 'entities'>\n\t& {\n\t\tchildren: ReactNode\n\t}\n\nexport const SelectDataView = (props: SelectDataViewProps) => {\n\tconst handleSelect = useSelectHandleSelect()\n\tconst entities = useSelectOptions()\n\n\treturn (\n\t\t<DataView\n\t\t\tonSelectHighlighted={handleSelect}\n\t\t\tentities={entities}\n\t\t\tfilteringStateStorage=\"null\"\n\t\t\tsortingStateStorage=\"null\"\n\t\t\tcurrentPageStateStorage=\"null\"\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n"],"names":[],"mappings":";;;AAUa,MAAA,iBAAiB,CAAC,UAA+B;AAC7D,QAAM,eAAe,sBAAsB;AAC3C,QAAM,WAAW,iBAAiB;AAGjC,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,qBAAqB;AAAA,MACrB;AAAA,MACA,uBAAsB;AAAA,MACtB,qBAAoB;AAAA,MACpB,yBAAwB;AAAA,MACvB,GAAG;AAAA,IAAA;AAAA,EACL;AAEF;"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
-
const contexts = require("../contexts.cjs");
|
|
5
|
-
const reactBinding = require("@contember/react-binding");
|
|
6
|
-
const SelectEachValue = ({ children }) => {
|
|
7
|
-
const entities = contexts.useSelectCurrentEntities();
|
|
8
|
-
return entities.map((entity) => /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Entity, { accessor: entity, children }, entity.key));
|
|
9
|
-
};
|
|
10
|
-
exports.SelectEachValue = SelectEachValue;
|
|
11
|
-
//# sourceMappingURL=SelectEachItem.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SelectEachItem.cjs","sources":["../../../../../packages/react-select/src/components/SelectEachItem.tsx"],"sourcesContent":["import React, { ReactNode } from 'react'\nimport { useSelectCurrentEntities } from '../contexts'\nimport { Entity } from '@contember/react-binding'\n\n\nexport const SelectEachValue = ({ children }: { children: ReactNode }) => {\n\tconst entities = useSelectCurrentEntities()\n\treturn entities.map(entity => (\n\t\t<Entity key={entity.key} accessor={entity}>\n\t\t\t{children}\n\t\t</Entity>\n\t))\n}\n"],"names":["useSelectCurrentEntities","jsx","Entity"],"mappings":";;;;;AAKO,MAAM,kBAAkB,CAAC,EAAE,eAAwC;AACzE,QAAM,WAAWA,SAAAA,yBAAyB;AACnC,SAAA,SAAS,IAAI,CAAA,WAClBC,2BAAA,IAAAC,aAAA,QAAA,EAAwB,UAAU,QACjC,SAAA,GADW,OAAO,GAEpB,CACA;AACF;;"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useSelectCurrentEntities } from "../contexts.js";
|
|
3
|
-
import { Entity } from "@contember/react-binding";
|
|
4
|
-
const SelectEachValue = ({ children }) => {
|
|
5
|
-
const entities = useSelectCurrentEntities();
|
|
6
|
-
return entities.map((entity) => /* @__PURE__ */ jsx(Entity, { accessor: entity, children }, entity.key));
|
|
7
|
-
};
|
|
8
|
-
export {
|
|
9
|
-
SelectEachValue
|
|
10
|
-
};
|
|
11
|
-
//# sourceMappingURL=SelectEachItem.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SelectEachItem.js","sources":["../../../../../packages/react-select/src/components/SelectEachItem.tsx"],"sourcesContent":["import React, { ReactNode } from 'react'\nimport { useSelectCurrentEntities } from '../contexts'\nimport { Entity } from '@contember/react-binding'\n\n\nexport const SelectEachValue = ({ children }: { children: ReactNode }) => {\n\tconst entities = useSelectCurrentEntities()\n\treturn entities.map(entity => (\n\t\t<Entity key={entity.key} accessor={entity}>\n\t\t\t{children}\n\t\t</Entity>\n\t))\n}\n"],"names":[],"mappings":";;;AAKO,MAAM,kBAAkB,CAAC,EAAE,eAAwC;AACzE,QAAM,WAAW,yBAAyB;AACnC,SAAA,SAAS,IAAI,CAAA,WAClB,oBAAA,QAAA,EAAwB,UAAU,QACjC,SAAA,GADW,OAAO,GAEpB,CACA;AACF;"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
-
const React = require("react");
|
|
5
|
-
const contexts = require("../contexts.cjs");
|
|
6
|
-
const reactSlot = require("@radix-ui/react-slot");
|
|
7
|
-
const reactBinding = require("@contember/react-binding");
|
|
8
|
-
const SelectItemTrigger = React.forwardRef(({ action, ...props }, ref) => {
|
|
9
|
-
const handleSelect = contexts.useSelectHandleSelect();
|
|
10
|
-
const entity = reactBinding.useEntity();
|
|
11
|
-
const onClickProp = props.onClick;
|
|
12
|
-
const onClick = React.useCallback((e) => {
|
|
13
|
-
handleSelect?.(entity, action);
|
|
14
|
-
onClickProp?.(e);
|
|
15
|
-
}, [action, entity, handleSelect, onClickProp]);
|
|
16
|
-
return /* @__PURE__ */ jsxRuntime.jsx(reactSlot.Slot, { ...props, onClick, ref });
|
|
17
|
-
});
|
|
18
|
-
exports.SelectItemTrigger = SelectItemTrigger;
|
|
19
|
-
//# sourceMappingURL=SelectItemTrigger.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SelectItemTrigger.cjs","sources":["../../../../../packages/react-select/src/components/SelectItemTrigger.tsx"],"sourcesContent":["import React, { forwardRef, ReactElement, useCallback } from 'react'\nimport { useSelectHandleSelect } from '../contexts'\nimport { Slot } from '@radix-ui/react-slot'\nimport { useEntity } from '@contember/react-binding'\n\nexport type SelectItemTriggerProps = {\n\tchildren: ReactElement\n\taction?: 'select' | 'unselect' | 'toggle'\n\tonClick?: (event: React.MouseEvent<HTMLElement>) => void\n}\n\nexport const SelectItemTrigger = forwardRef<HTMLElement, SelectItemTriggerProps>(({ action, ...props }: SelectItemTriggerProps, ref) => {\n\tconst handleSelect = useSelectHandleSelect()\n\tconst entity = useEntity()\n\tconst onClickProp = props.onClick\n\tconst onClick = useCallback((e: React.MouseEvent<HTMLElement>) => {\n\t\thandleSelect?.(entity, action)\n\t\tonClickProp?.(e)\n\t}, [action, entity, handleSelect, onClickProp])\n\treturn <Slot {...props} onClick={onClick} ref={ref} />\n})\n"],"names":["forwardRef","useSelectHandleSelect","useEntity","useCallback","jsx","Slot"],"mappings":";;;;;;;AAWa,MAAA,oBAAoBA,iBAAgD,CAAC,EAAE,QAAQ,GAAG,SAAiC,QAAQ;AACvI,QAAM,eAAeC,SAAAA,sBAAsB;AAC3C,QAAM,SAASC,aAAAA,UAAU;AACzB,QAAM,cAAc,MAAM;AACpB,QAAA,UAAUC,kBAAY,CAAC,MAAqC;AACjE,mBAAe,QAAQ,MAAM;AAC7B,kBAAc,CAAC;AAAA,KACb,CAAC,QAAQ,QAAQ,cAAc,WAAW,CAAC;AAC9C,SAAQC,2BAAAA,IAAAC,UAAAA,MAAA,EAAM,GAAG,OAAO,SAAmB,KAAU;AACtD,CAAC;;"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef, useCallback } from "react";
|
|
3
|
-
import { useSelectHandleSelect } from "../contexts.js";
|
|
4
|
-
import { Slot } from "@radix-ui/react-slot";
|
|
5
|
-
import { useEntity } from "@contember/react-binding";
|
|
6
|
-
const SelectItemTrigger = forwardRef(({ action, ...props }, ref) => {
|
|
7
|
-
const handleSelect = useSelectHandleSelect();
|
|
8
|
-
const entity = useEntity();
|
|
9
|
-
const onClickProp = props.onClick;
|
|
10
|
-
const onClick = useCallback((e) => {
|
|
11
|
-
handleSelect?.(entity, action);
|
|
12
|
-
onClickProp?.(e);
|
|
13
|
-
}, [action, entity, handleSelect, onClickProp]);
|
|
14
|
-
return /* @__PURE__ */ jsx(Slot, { ...props, onClick, ref });
|
|
15
|
-
});
|
|
16
|
-
export {
|
|
17
|
-
SelectItemTrigger
|
|
18
|
-
};
|
|
19
|
-
//# sourceMappingURL=SelectItemTrigger.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SelectItemTrigger.js","sources":["../../../../../packages/react-select/src/components/SelectItemTrigger.tsx"],"sourcesContent":["import React, { forwardRef, ReactElement, useCallback } from 'react'\nimport { useSelectHandleSelect } from '../contexts'\nimport { Slot } from '@radix-ui/react-slot'\nimport { useEntity } from '@contember/react-binding'\n\nexport type SelectItemTriggerProps = {\n\tchildren: ReactElement\n\taction?: 'select' | 'unselect' | 'toggle'\n\tonClick?: (event: React.MouseEvent<HTMLElement>) => void\n}\n\nexport const SelectItemTrigger = forwardRef<HTMLElement, SelectItemTriggerProps>(({ action, ...props }: SelectItemTriggerProps, ref) => {\n\tconst handleSelect = useSelectHandleSelect()\n\tconst entity = useEntity()\n\tconst onClickProp = props.onClick\n\tconst onClick = useCallback((e: React.MouseEvent<HTMLElement>) => {\n\t\thandleSelect?.(entity, action)\n\t\tonClickProp?.(e)\n\t}, [action, entity, handleSelect, onClickProp])\n\treturn <Slot {...props} onClick={onClick} ref={ref} />\n})\n"],"names":[],"mappings":";;;;;AAWa,MAAA,oBAAoB,WAAgD,CAAC,EAAE,QAAQ,GAAG,SAAiC,QAAQ;AACvI,QAAM,eAAe,sBAAsB;AAC3C,QAAM,SAAS,UAAU;AACzB,QAAM,cAAc,MAAM;AACpB,QAAA,UAAU,YAAY,CAAC,MAAqC;AACjE,mBAAe,QAAQ,MAAM;AAC7B,kBAAc,CAAC;AAAA,KACb,CAAC,QAAQ,QAAQ,cAAc,WAAW,CAAC;AAC9C,SAAQ,oBAAA,MAAA,EAAM,GAAG,OAAO,SAAmB,KAAU;AACtD,CAAC;"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
-
const reactBinding = require("@contember/react-binding");
|
|
5
|
-
const React = require("react");
|
|
6
|
-
const contexts = require("../contexts.cjs");
|
|
7
|
-
const SelectNewItem = ({ children }) => {
|
|
8
|
-
const options = contexts.useSelectOptions();
|
|
9
|
-
const env = reactBinding.useEnvironment();
|
|
10
|
-
const { entityName } = React.useMemo(() => reactBinding.QueryLanguage.desugarQualifiedEntityList({ entities: options }, env), [env, options]);
|
|
11
|
-
const [state, setState] = React.useState(null);
|
|
12
|
-
const extendTree = reactBinding.useExtendTree();
|
|
13
|
-
const getSubTree = reactBinding.useGetEntitySubTree();
|
|
14
|
-
React.useEffect(() => {
|
|
15
|
-
(async () => {
|
|
16
|
-
const treeRootId = await extendTree(/* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx(reactBinding.EntitySubTree, { entity: {
|
|
17
|
-
entityName
|
|
18
|
-
}, expectedMutation: "none", isUnpersisted: true, isCreating: true, children }) }));
|
|
19
|
-
if (!treeRootId) {
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
const entity = getSubTree({
|
|
23
|
-
entity: {
|
|
24
|
-
entityName
|
|
25
|
-
},
|
|
26
|
-
isCreating: true
|
|
27
|
-
}, treeRootId);
|
|
28
|
-
setState({
|
|
29
|
-
entity,
|
|
30
|
-
treeRootId
|
|
31
|
-
});
|
|
32
|
-
})();
|
|
33
|
-
}, [children, entityName, extendTree, getSubTree]);
|
|
34
|
-
if (!state) {
|
|
35
|
-
return null;
|
|
36
|
-
}
|
|
37
|
-
return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsx(reactBinding.TreeRootIdProvider, { treeRootId: state.treeRootId, children: /* @__PURE__ */ jsxRuntime.jsx(reactBinding.Entity, { accessor: state.entity, children }) }) });
|
|
38
|
-
};
|
|
39
|
-
exports.SelectNewItem = SelectNewItem;
|
|
40
|
-
//# sourceMappingURL=SelectNewItem.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SelectNewItem.cjs","sources":["../../../../../packages/react-select/src/components/SelectNewItem.tsx"],"sourcesContent":["import { Entity, EntityAccessor, EntitySubTree, QueryLanguage, TreeRootId, TreeRootIdProvider, useEnvironment, useExtendTree, useGetEntitySubTree } from '@contember/react-binding'\nimport * as React from 'react'\nimport { ReactNode, useEffect, useMemo, useState } from 'react'\nimport { useSelectOptions } from '../contexts'\n\nexport const SelectNewItem = ({ children }: { children: ReactNode }) => {\n\tconst options = useSelectOptions()\n\tconst env = useEnvironment()\n\tconst { entityName } = useMemo((() => QueryLanguage.desugarQualifiedEntityList({ entities: options }, env)), [env, options])\n\n\tconst [state, setState] = useState<{ entity: EntityAccessor; treeRootId: TreeRootId } | null>(null)\n\tconst extendTree = useExtendTree()\n\tconst getSubTree = useGetEntitySubTree()\n\n\tuseEffect(() => {\n\t\t(async () => {\n\t\t\tconst treeRootId = await extendTree(<>\n\t\t\t\t<EntitySubTree entity={{\n\t\t\t\t\tentityName,\n\t\t\t\t}} expectedMutation={'none'} isUnpersisted isCreating>\n\t\t\t\t\t{children}\n\t\t\t\t</EntitySubTree>\n\t\t\t</>)\n\t\t\tif (!treeRootId) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst entity = getSubTree({\n\t\t\t\tentity: {\n\t\t\t\t\tentityName: entityName,\n\t\t\t\t},\n\t\t\t\tisCreating: true,\n\t\t\t}, treeRootId)\n\t\t\tsetState({\n\t\t\t\tentity,\n\t\t\t\ttreeRootId,\n\t\t\t})\n\t\t})()\n\t}, [children, entityName, extendTree, getSubTree])\n\n\tif (!state) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<TreeRootIdProvider treeRootId={state.treeRootId}>\n\t\t\t\t<Entity accessor={state.entity}>\n\t\t\t\t\t{children}\n\t\t\t\t</Entity>\n\t\t\t</TreeRootIdProvider>\n\t\t</>\n\t)\n}\n"],"names":["useSelectOptions","useEnvironment","useMemo","QueryLanguage","useState","useExtendTree","useGetEntitySubTree","useEffect","jsx","Fragment","EntitySubTree","TreeRootIdProvider","Entity"],"mappings":";;;;;;AAKO,MAAM,gBAAgB,CAAC,EAAE,eAAwC;AACvE,QAAM,UAAUA,SAAAA,iBAAiB;AACjC,QAAM,MAAMC,aAAAA,eAAe;AAC3B,QAAM,EAAE,WAAW,IAAIC,MAAS,QAAA,MAAMC,aAAAA,cAAc,2BAA2B,EAAE,UAAU,WAAW,GAAG,GAAI,CAAC,KAAK,OAAO,CAAC;AAE3H,QAAM,CAAC,OAAO,QAAQ,IAAIC,MAAAA,SAAoE,IAAI;AAClG,QAAM,aAAaC,aAAAA,cAAc;AACjC,QAAM,aAAaC,aAAAA,oBAAoB;AAEvCC,QAAAA,UAAU,MAAM;AACf,KAAC,YAAY;AACZ,YAAM,aAAa,MAAM,WACxBC,+BAAAC,WAAAA,UAAA,EAAA,UAAAD,2BAAA,IAACE,8BAAc,QAAQ;AAAA,QACtB;AAAA,MAAA,GACE,kBAAkB,QAAQ,eAAa,MAAC,YAAU,MACnD,UACF,EAAA,CACD,CAAG;AACH,UAAI,CAAC,YAAY;AAChB;AAAA,MAAA;AAGD,YAAM,SAAS,WAAW;AAAA,QACzB,QAAQ;AAAA,UACP;AAAA,QACD;AAAA,QACA,YAAY;AAAA,SACV,UAAU;AACJ,eAAA;AAAA,QACR;AAAA,QACA;AAAA,MAAA,CACA;AAAA,IAAA,GACC;AAAA,KACD,CAAC,UAAU,YAAY,YAAY,UAAU,CAAC;AAEjD,MAAI,CAAC,OAAO;AACJ,WAAA;AAAA,EAAA;AAGR,SAEEF,2BAAA,IAAAC,WAAA,UAAA,EAAA,UAAAD,2BAAA,IAACG,iCAAmB,EAAA,YAAY,MAAM,YACrC,UAACH,+BAAAI,aAAAA,QAAA,EAAO,UAAU,MAAM,QACtB,SAAA,CACF,EACD,CAAA,GACD;AAEF;;"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { jsx, Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { useEnvironment, QueryLanguage, useExtendTree, useGetEntitySubTree, EntitySubTree, TreeRootIdProvider, Entity } from "@contember/react-binding";
|
|
3
|
-
import { useMemo, useState, useEffect } from "react";
|
|
4
|
-
import { useSelectOptions } from "../contexts.js";
|
|
5
|
-
const SelectNewItem = ({ children }) => {
|
|
6
|
-
const options = useSelectOptions();
|
|
7
|
-
const env = useEnvironment();
|
|
8
|
-
const { entityName } = useMemo(() => QueryLanguage.desugarQualifiedEntityList({ entities: options }, env), [env, options]);
|
|
9
|
-
const [state, setState] = useState(null);
|
|
10
|
-
const extendTree = useExtendTree();
|
|
11
|
-
const getSubTree = useGetEntitySubTree();
|
|
12
|
-
useEffect(() => {
|
|
13
|
-
(async () => {
|
|
14
|
-
const treeRootId = await extendTree(/* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(EntitySubTree, { entity: {
|
|
15
|
-
entityName
|
|
16
|
-
}, expectedMutation: "none", isUnpersisted: true, isCreating: true, children }) }));
|
|
17
|
-
if (!treeRootId) {
|
|
18
|
-
return;
|
|
19
|
-
}
|
|
20
|
-
const entity = getSubTree({
|
|
21
|
-
entity: {
|
|
22
|
-
entityName
|
|
23
|
-
},
|
|
24
|
-
isCreating: true
|
|
25
|
-
}, treeRootId);
|
|
26
|
-
setState({
|
|
27
|
-
entity,
|
|
28
|
-
treeRootId
|
|
29
|
-
});
|
|
30
|
-
})();
|
|
31
|
-
}, [children, entityName, extendTree, getSubTree]);
|
|
32
|
-
if (!state) {
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(TreeRootIdProvider, { treeRootId: state.treeRootId, children: /* @__PURE__ */ jsx(Entity, { accessor: state.entity, children }) }) });
|
|
36
|
-
};
|
|
37
|
-
export {
|
|
38
|
-
SelectNewItem
|
|
39
|
-
};
|
|
40
|
-
//# sourceMappingURL=SelectNewItem.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SelectNewItem.js","sources":["../../../../../packages/react-select/src/components/SelectNewItem.tsx"],"sourcesContent":["import { Entity, EntityAccessor, EntitySubTree, QueryLanguage, TreeRootId, TreeRootIdProvider, useEnvironment, useExtendTree, useGetEntitySubTree } from '@contember/react-binding'\nimport * as React from 'react'\nimport { ReactNode, useEffect, useMemo, useState } from 'react'\nimport { useSelectOptions } from '../contexts'\n\nexport const SelectNewItem = ({ children }: { children: ReactNode }) => {\n\tconst options = useSelectOptions()\n\tconst env = useEnvironment()\n\tconst { entityName } = useMemo((() => QueryLanguage.desugarQualifiedEntityList({ entities: options }, env)), [env, options])\n\n\tconst [state, setState] = useState<{ entity: EntityAccessor; treeRootId: TreeRootId } | null>(null)\n\tconst extendTree = useExtendTree()\n\tconst getSubTree = useGetEntitySubTree()\n\n\tuseEffect(() => {\n\t\t(async () => {\n\t\t\tconst treeRootId = await extendTree(<>\n\t\t\t\t<EntitySubTree entity={{\n\t\t\t\t\tentityName,\n\t\t\t\t}} expectedMutation={'none'} isUnpersisted isCreating>\n\t\t\t\t\t{children}\n\t\t\t\t</EntitySubTree>\n\t\t\t</>)\n\t\t\tif (!treeRootId) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst entity = getSubTree({\n\t\t\t\tentity: {\n\t\t\t\t\tentityName: entityName,\n\t\t\t\t},\n\t\t\t\tisCreating: true,\n\t\t\t}, treeRootId)\n\t\t\tsetState({\n\t\t\t\tentity,\n\t\t\t\ttreeRootId,\n\t\t\t})\n\t\t})()\n\t}, [children, entityName, extendTree, getSubTree])\n\n\tif (!state) {\n\t\treturn null\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<TreeRootIdProvider treeRootId={state.treeRootId}>\n\t\t\t\t<Entity accessor={state.entity}>\n\t\t\t\t\t{children}\n\t\t\t\t</Entity>\n\t\t\t</TreeRootIdProvider>\n\t\t</>\n\t)\n}\n"],"names":[],"mappings":";;;;AAKO,MAAM,gBAAgB,CAAC,EAAE,eAAwC;AACvE,QAAM,UAAU,iBAAiB;AACjC,QAAM,MAAM,eAAe;AAC3B,QAAM,EAAE,WAAW,IAAI,QAAS,MAAM,cAAc,2BAA2B,EAAE,UAAU,WAAW,GAAG,GAAI,CAAC,KAAK,OAAO,CAAC;AAE3H,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAoE,IAAI;AAClG,QAAM,aAAa,cAAc;AACjC,QAAM,aAAa,oBAAoB;AAEvC,YAAU,MAAM;AACf,KAAC,YAAY;AACZ,YAAM,aAAa,MAAM,WACxB,oBAAA,UAAA,EAAA,UAAA,oBAAC,iBAAc,QAAQ;AAAA,QACtB;AAAA,MAAA,GACE,kBAAkB,QAAQ,eAAa,MAAC,YAAU,MACnD,UACF,EAAA,CACD,CAAG;AACH,UAAI,CAAC,YAAY;AAChB;AAAA,MAAA;AAGD,YAAM,SAAS,WAAW;AAAA,QACzB,QAAQ;AAAA,UACP;AAAA,QACD;AAAA,QACA,YAAY;AAAA,SACV,UAAU;AACJ,eAAA;AAAA,QACR;AAAA,QACA;AAAA,MAAA,CACA;AAAA,IAAA,GACC;AAAA,KACD,CAAC,UAAU,YAAY,YAAY,UAAU,CAAC;AAEjD,MAAI,CAAC,OAAO;AACJ,WAAA;AAAA,EAAA;AAGR,SAEE,oBAAA,UAAA,EAAA,UAAA,oBAAC,oBAAmB,EAAA,YAAY,MAAM,YACrC,UAAC,oBAAA,QAAA,EAAO,UAAU,MAAM,QACtB,SAAA,CACF,EACD,CAAA,GACD;AAEF;"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const jsxRuntime = require("react/jsx-runtime");
|
|
4
|
-
const React = require("react");
|
|
5
|
-
const contexts = require("../contexts.cjs");
|
|
6
|
-
const reactSlot = require("@radix-ui/react-slot");
|
|
7
|
-
const reactBinding = require("@contember/react-binding");
|
|
8
|
-
const utilities = require("@contember/utilities");
|
|
9
|
-
const SelectOption = React.forwardRef(({ action, ...props }, ref) => {
|
|
10
|
-
const isSelected = contexts.useSelectIsSelected();
|
|
11
|
-
const entity = reactBinding.useEntity();
|
|
12
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
13
|
-
reactSlot.Slot,
|
|
14
|
-
{
|
|
15
|
-
ref,
|
|
16
|
-
"data-selected": utilities.dataAttribute(isSelected?.(entity)),
|
|
17
|
-
...props
|
|
18
|
-
}
|
|
19
|
-
);
|
|
20
|
-
});
|
|
21
|
-
exports.SelectOption = SelectOption;
|
|
22
|
-
//# sourceMappingURL=SelectOption.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SelectOption.cjs","sources":["../../../../../packages/react-select/src/components/SelectOption.tsx"],"sourcesContent":["import React, { forwardRef, ReactNode } from 'react'\nimport { useSelectIsSelected } from '../contexts'\nimport { Slot } from '@radix-ui/react-slot'\nimport { useEntity } from '@contember/react-binding'\nimport { dataAttribute } from '@contember/utilities'\n\nexport type SelectOptionProps = {\n\tchildren: ReactNode\n\taction?: 'select' | 'unselect' | 'toggle'\n}\n\nexport const SelectOption = forwardRef<HTMLElement, SelectOptionProps>(({ action, ...props }, ref) => {\n\tconst isSelected = useSelectIsSelected()\n\tconst entity = useEntity()\n\treturn (\n\t\t<Slot\n\t\t\tref={ref}\n\t\t\tdata-selected={dataAttribute(isSelected?.(entity))}\n\t\t\t{...props}\n\t\t/>\n\t)\n})\n"],"names":["forwardRef","useSelectIsSelected","useEntity","jsx","Slot","dataAttribute"],"mappings":";;;;;;;;AAWa,MAAA,eAAeA,iBAA2C,CAAC,EAAE,QAAQ,GAAG,SAAS,QAAQ;AACrG,QAAM,aAAaC,SAAAA,oBAAoB;AACvC,QAAM,SAASC,aAAAA,UAAU;AAExB,SAAAC,2BAAA;AAAA,IAACC,UAAA;AAAA,IAAA;AAAA,MACA;AAAA,MACA,iBAAeC,UAAA,cAAc,aAAa,MAAM,CAAC;AAAA,MAChD,GAAG;AAAA,IAAA;AAAA,EACL;AAEF,CAAC;;"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { forwardRef } from "react";
|
|
3
|
-
import { useSelectIsSelected } from "../contexts.js";
|
|
4
|
-
import { Slot } from "@radix-ui/react-slot";
|
|
5
|
-
import { useEntity } from "@contember/react-binding";
|
|
6
|
-
import { dataAttribute } from "@contember/utilities";
|
|
7
|
-
const SelectOption = forwardRef(({ action, ...props }, ref) => {
|
|
8
|
-
const isSelected = useSelectIsSelected();
|
|
9
|
-
const entity = useEntity();
|
|
10
|
-
return /* @__PURE__ */ jsx(
|
|
11
|
-
Slot,
|
|
12
|
-
{
|
|
13
|
-
ref,
|
|
14
|
-
"data-selected": dataAttribute(isSelected?.(entity)),
|
|
15
|
-
...props
|
|
16
|
-
}
|
|
17
|
-
);
|
|
18
|
-
});
|
|
19
|
-
export {
|
|
20
|
-
SelectOption
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=SelectOption.js.map
|