@contember/react-select 1.3.0-alpha.14

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 (133) hide show
  1. package/dist/development/components/MultiSelect.cjs +33 -0
  2. package/dist/development/components/MultiSelect.cjs.map +1 -0
  3. package/dist/development/components/MultiSelect.js +33 -0
  4. package/dist/development/components/MultiSelect.js.map +1 -0
  5. package/dist/development/components/Select.cjs +31 -0
  6. package/dist/development/components/Select.cjs.map +1 -0
  7. package/dist/development/components/Select.js +31 -0
  8. package/dist/development/components/Select.js.map +1 -0
  9. package/dist/development/components/SelectDataView.cjs +12 -0
  10. package/dist/development/components/SelectDataView.cjs.map +1 -0
  11. package/dist/development/components/SelectDataView.js +12 -0
  12. package/dist/development/components/SelectDataView.js.map +1 -0
  13. package/dist/development/components/SelectEachItem.cjs +11 -0
  14. package/dist/development/components/SelectEachItem.cjs.map +1 -0
  15. package/dist/development/components/SelectEachItem.js +11 -0
  16. package/dist/development/components/SelectEachItem.js.map +1 -0
  17. package/dist/development/components/SelectItemTrigger.cjs +17 -0
  18. package/dist/development/components/SelectItemTrigger.cjs.map +1 -0
  19. package/dist/development/components/SelectItemTrigger.js +17 -0
  20. package/dist/development/components/SelectItemTrigger.js.map +1 -0
  21. package/dist/development/components/SelectNewItem.cjs +40 -0
  22. package/dist/development/components/SelectNewItem.cjs.map +1 -0
  23. package/dist/development/components/SelectNewItem.js +40 -0
  24. package/dist/development/components/SelectNewItem.js.map +1 -0
  25. package/dist/development/components/SelectOption.cjs +22 -0
  26. package/dist/development/components/SelectOption.cjs.map +1 -0
  27. package/dist/development/components/SelectOption.js +22 -0
  28. package/dist/development/components/SelectOption.js.map +1 -0
  29. package/dist/development/components/SelectPlaceholder.cjs +10 -0
  30. package/dist/development/components/SelectPlaceholder.cjs.map +1 -0
  31. package/dist/development/components/SelectPlaceholder.js +10 -0
  32. package/dist/development/components/SelectPlaceholder.js.map +1 -0
  33. package/dist/development/components/SortableMultiSelect.cjs +36 -0
  34. package/dist/development/components/SortableMultiSelect.cjs.map +1 -0
  35. package/dist/development/components/SortableMultiSelect.js +36 -0
  36. package/dist/development/components/SortableMultiSelect.js.map +1 -0
  37. package/dist/development/contexts.cjs +24 -0
  38. package/dist/development/contexts.cjs.map +1 -0
  39. package/dist/development/contexts.js +24 -0
  40. package/dist/development/contexts.js.map +1 -0
  41. package/dist/development/index.cjs +30 -0
  42. package/dist/development/index.cjs.map +1 -0
  43. package/dist/development/index.js +30 -0
  44. package/dist/development/index.js.map +1 -0
  45. package/dist/production/components/MultiSelect.cjs +33 -0
  46. package/dist/production/components/MultiSelect.cjs.map +1 -0
  47. package/dist/production/components/MultiSelect.js +33 -0
  48. package/dist/production/components/MultiSelect.js.map +1 -0
  49. package/dist/production/components/Select.cjs +31 -0
  50. package/dist/production/components/Select.cjs.map +1 -0
  51. package/dist/production/components/Select.js +31 -0
  52. package/dist/production/components/Select.js.map +1 -0
  53. package/dist/production/components/SelectDataView.cjs +12 -0
  54. package/dist/production/components/SelectDataView.cjs.map +1 -0
  55. package/dist/production/components/SelectDataView.js +12 -0
  56. package/dist/production/components/SelectDataView.js.map +1 -0
  57. package/dist/production/components/SelectEachItem.cjs +11 -0
  58. package/dist/production/components/SelectEachItem.cjs.map +1 -0
  59. package/dist/production/components/SelectEachItem.js +11 -0
  60. package/dist/production/components/SelectEachItem.js.map +1 -0
  61. package/dist/production/components/SelectItemTrigger.cjs +17 -0
  62. package/dist/production/components/SelectItemTrigger.cjs.map +1 -0
  63. package/dist/production/components/SelectItemTrigger.js +17 -0
  64. package/dist/production/components/SelectItemTrigger.js.map +1 -0
  65. package/dist/production/components/SelectNewItem.cjs +40 -0
  66. package/dist/production/components/SelectNewItem.cjs.map +1 -0
  67. package/dist/production/components/SelectNewItem.js +40 -0
  68. package/dist/production/components/SelectNewItem.js.map +1 -0
  69. package/dist/production/components/SelectOption.cjs +22 -0
  70. package/dist/production/components/SelectOption.cjs.map +1 -0
  71. package/dist/production/components/SelectOption.js +22 -0
  72. package/dist/production/components/SelectOption.js.map +1 -0
  73. package/dist/production/components/SelectPlaceholder.cjs +10 -0
  74. package/dist/production/components/SelectPlaceholder.cjs.map +1 -0
  75. package/dist/production/components/SelectPlaceholder.js +10 -0
  76. package/dist/production/components/SelectPlaceholder.js.map +1 -0
  77. package/dist/production/components/SortableMultiSelect.cjs +36 -0
  78. package/dist/production/components/SortableMultiSelect.cjs.map +1 -0
  79. package/dist/production/components/SortableMultiSelect.js +36 -0
  80. package/dist/production/components/SortableMultiSelect.js.map +1 -0
  81. package/dist/production/contexts.cjs +24 -0
  82. package/dist/production/contexts.cjs.map +1 -0
  83. package/dist/production/contexts.js +24 -0
  84. package/dist/production/contexts.js.map +1 -0
  85. package/dist/production/index.cjs +30 -0
  86. package/dist/production/index.cjs.map +1 -0
  87. package/dist/production/index.js +30 -0
  88. package/dist/production/index.js.map +1 -0
  89. package/dist/types/components/MultiSelect.d.ts +14 -0
  90. package/dist/types/components/MultiSelect.d.ts.map +1 -0
  91. package/dist/types/components/Select.d.ts +14 -0
  92. package/dist/types/components/Select.d.ts.map +1 -0
  93. package/dist/types/components/SelectDataView.d.ts +7 -0
  94. package/dist/types/components/SelectDataView.d.ts.map +1 -0
  95. package/dist/types/components/SelectEachItem.d.ts +5 -0
  96. package/dist/types/components/SelectEachItem.d.ts.map +1 -0
  97. package/dist/types/components/SelectItemTrigger.d.ts +7 -0
  98. package/dist/types/components/SelectItemTrigger.d.ts.map +1 -0
  99. package/dist/types/components/SelectNewItem.d.ts +5 -0
  100. package/dist/types/components/SelectNewItem.d.ts.map +1 -0
  101. package/dist/types/components/SelectOption.d.ts +7 -0
  102. package/dist/types/components/SelectOption.d.ts.map +1 -0
  103. package/dist/types/components/SelectPlaceholder.d.ts +5 -0
  104. package/dist/types/components/SelectPlaceholder.d.ts.map +1 -0
  105. package/dist/types/components/SortableMultiSelect.d.ts +18 -0
  106. package/dist/types/components/SortableMultiSelect.d.ts.map +1 -0
  107. package/dist/types/components/index.d.ts +10 -0
  108. package/dist/types/components/index.d.ts.map +1 -0
  109. package/dist/types/contexts.d.ts +15 -0
  110. package/dist/types/contexts.d.ts.map +1 -0
  111. package/dist/types/index.d.ts +4 -0
  112. package/dist/types/index.d.ts.map +1 -0
  113. package/dist/types/tsconfig.tsbuildinfo +1 -0
  114. package/dist/types/types/events.d.ts +6 -0
  115. package/dist/types/types/events.d.ts.map +1 -0
  116. package/dist/types/types/index.d.ts +2 -0
  117. package/dist/types/types/index.d.ts.map +1 -0
  118. package/package.json +59 -0
  119. package/src/components/MultiSelect.tsx +55 -0
  120. package/src/components/Select.tsx +53 -0
  121. package/src/components/SelectDataView.tsx +17 -0
  122. package/src/components/SelectEachItem.tsx +13 -0
  123. package/src/components/SelectItemTrigger.tsx +19 -0
  124. package/src/components/SelectNewItem.tsx +54 -0
  125. package/src/components/SelectOption.tsx +22 -0
  126. package/src/components/SelectPlaceholder.tsx +7 -0
  127. package/src/components/SortableMultiSelect.tsx +65 -0
  128. package/src/components/index.ts +9 -0
  129. package/src/contexts.ts +25 -0
  130. package/src/index.ts +3 -0
  131. package/src/tsconfig.json +13 -0
  132. package/src/types/events.ts +6 -0
  133. package/src/types/index.ts +1 -0
@@ -0,0 +1,10 @@
1
+ import { jsx, Fragment } from "react/jsx-runtime";
2
+ import { useSelectCurrentEntities } from "../contexts.js";
3
+ const SelectPlaceholder = ({ children }) => {
4
+ const hasEntities = useSelectCurrentEntities().length > 0;
5
+ return hasEntities ? null : /* @__PURE__ */ jsx(Fragment, { children });
6
+ };
7
+ export {
8
+ SelectPlaceholder
9
+ };
10
+ //# sourceMappingURL=SelectPlaceholder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectPlaceholder.js","sources":["../../../src/components/SelectPlaceholder.tsx"],"sourcesContent":["import React, { ReactNode } from 'react'\nimport { useSelectCurrentEntities } from '../contexts'\n\nexport const SelectPlaceholder = ({ children }: { children: ReactNode }) => {\n\tconst hasEntities = useSelectCurrentEntities().length > 0\n\treturn hasEntities ? null : <>{children}</>\n}\n"],"names":[],"mappings":";;AAGO,MAAM,oBAAoB,CAAC,EAAE,eAAwC;AACrE,QAAA,cAAc,2BAA2B,SAAS;AACjD,SAAA,cAAc,OAAO,oBAAA,UAAA,EAAG,SAAS,CAAA;AACzC;"}
@@ -0,0 +1,36 @@
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 reactRepeater = require("@contember/react-repeater");
9
+ const SortableMultiSelect = reactBinding.Component(({ field, children, sortableBy, connectAt, options, onSelect, onUnselect }) => {
10
+ const list = reactBinding.useEntityList({ field });
11
+ const entitiesArr = react.useMemo(() => Array.from(list), [list]);
12
+ const selectedEntities = react.useMemo(() => Array.from(list).map((it) => it.getEntity({ field: connectAt }).id), [connectAt, list]);
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
+ Array.from(list).find((it) => it.getEntity({ field: connectAt }).id === entity.id)?.deleteEntity();
20
+ onUnselect?.(entity);
21
+ } else if (action === "select" && !isSelected2) {
22
+ list.createNewEntity((getEntity) => {
23
+ getEntity().connectEntityAtField({ field: connectAt }, entity);
24
+ onSelect?.(entity);
25
+ });
26
+ }
27
+ });
28
+ const isSelected = react.useCallback((entity) => {
29
+ return selectedEntities.includes(entity.id);
30
+ }, [selectedEntities]);
31
+ return /* @__PURE__ */ jsxRuntime.jsx(reactRepeater.Repeater, { field, sortableBy, initialEntityCount: 0, children: /* @__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 }) }) }) }) });
32
+ }, ({ children, field, sortableBy, connectAt }) => {
33
+ return /* @__PURE__ */ jsxRuntime.jsx(reactRepeater.Repeater, { field, sortableBy, initialEntityCount: 0, children: /* @__PURE__ */ jsxRuntime.jsx(reactBinding.HasOne, { field: connectAt, children }) });
34
+ });
35
+ exports.SortableMultiSelect = SortableMultiSelect;
36
+ //# sourceMappingURL=SortableMultiSelect.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SortableMultiSelect.cjs","sources":["../../../src/components/SortableMultiSelect.tsx"],"sourcesContent":["import React, { ReactNode, useCallback, useMemo } from 'react'\nimport { SelectCurrentEntitiesContext, SelectHandler, SelectHandleSelectContext, SelectIsSelectedContext, SelectOptionsContext } from '../contexts'\nimport { Component, EntityAccessor, HasOne, SugaredQualifiedEntityList, SugaredRelativeEntityList, SugaredRelativeSingleEntity, SugaredRelativeSingleField, useEntityList } from '@contember/react-binding'\nimport { useReferentiallyStableCallback } from '@contember/react-utils'\nimport { Repeater } from '@contember/react-repeater'\nimport { SelectEvents } from '../types'\n\nexport type SortableMultiSelectProps =\n\t& {\n\t\tchildren: ReactNode\n\t\tfield: SugaredRelativeEntityList['field']\n\t\toptions: SugaredQualifiedEntityList['entities']\n\t\tsortableBy: SugaredRelativeSingleField['field']\n\t\tconnectAt: SugaredRelativeSingleEntity['field']\n\t}\n\t& SelectEvents\n\nexport const SortableMultiSelect = Component(({ field, children, sortableBy, connectAt, options, onSelect, onUnselect }: SortableMultiSelectProps) => {\n\tconst list = useEntityList({ field })\n\tconst entitiesArr = useMemo(() => Array.from(list), [list])\n\n\tconst selectedEntities = useMemo(() => Array.from(list).map(it => it.getEntity({ field: connectAt }).id), [connectAt, list])\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\tArray.from(list).find(it => it.getEntity({ field: connectAt }).id === entity.id)?.deleteEntity()\n\t\t\tonUnselect?.(entity)\n\t\t} else if (action === 'select' && !isSelected) {\n\t\t\tlist.createNewEntity(getEntity => {\n\t\t\t\tgetEntity().connectEntityAtField({ field: connectAt }, entity)\n\t\t\t\tonSelect?.(entity)\n\t\t\t})\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<Repeater field={field} sortableBy={sortableBy} initialEntityCount={0}>\n\t\t\t<SelectCurrentEntitiesContext.Provider value={entitiesArr}>\n\t\t\t\t<SelectIsSelectedContext.Provider value={isSelected}>\n\t\t\t\t\t<SelectHandleSelectContext.Provider value={handler}>\n\t\t\t\t\t\t<SelectOptionsContext.Provider value={options}>\n\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t</SelectOptionsContext.Provider>\n\t\t\t\t\t</SelectHandleSelectContext.Provider>\n\t\t\t\t</SelectIsSelectedContext.Provider>\n\t\t\t</SelectCurrentEntitiesContext.Provider>\n\t\t</Repeater>\n\t)\n}, ({ children, field, sortableBy, connectAt }) => {\n\treturn (\n\t\t<Repeater field={field} sortableBy={sortableBy} initialEntityCount={0}>\n\t\t\t<HasOne field={connectAt}>\n\t\t\t\t{children}\n\t\t\t</HasOne>\n\t\t</Repeater>\n\t)\n})\n\n"],"names":["Component","useEntityList","useMemo","useReferentiallyStableCallback","isSelected","useCallback","jsx","Repeater","SelectCurrentEntitiesContext","SelectIsSelectedContext","SelectHandleSelectContext","SelectOptionsContext","HasOne"],"mappings":";;;;;;;;AAiBa,MAAA,sBAAsBA,aAAU,UAAA,CAAC,EAAE,OAAO,UAAU,YAAY,WAAW,SAAS,UAAU,iBAA2C;AACrJ,QAAM,OAAOC,aAAAA,cAAc,EAAE,MAAO,CAAA;AAC9B,QAAA,cAAcC,cAAQ,MAAM,MAAM,KAAK,IAAI,GAAG,CAAC,IAAI,CAAC;AAEpD,QAAA,mBAAmBA,cAAQ,MAAM,MAAM,KAAK,IAAI,EAAE,IAAI,CAAM,OAAA,GAAG,UAAU,EAAE,OAAO,WAAW,EAAE,EAAE,GAAG,CAAC,WAAW,IAAI,CAAC;AAE3H,QAAM,UAAUC,WAAA,+BAA8C,CAAC,QAAQ,SAAS,aAAa;AAC5F,UAAMC,cAAa,iBAAiB,SAAS,OAAO,EAAE;AACtD,QAAI,WAAW,UAAU;AACxB,eAASA,cAAa,aAAa;AAAA,IACpC;AACI,QAAA,WAAW,cAAcA,aAAY;AACxC,YAAM,KAAK,IAAI,EAAE,KAAK,CAAA,OAAM,GAAG,UAAU,EAAE,OAAO,UAAW,CAAA,EAAE,OAAO,OAAO,EAAE,GAAG;AAClF,mBAAa,MAAM;AAAA,IACT,WAAA,WAAW,YAAY,CAACA,aAAY;AAC9C,WAAK,gBAAgB,CAAa,cAAA;AACjC,kBAAA,EAAY,qBAAqB,EAAE,OAAO,UAAA,GAAa,MAAM;AAC7D,mBAAW,MAAM;AAAA,MAAA,CACjB;AAAA,IACF;AAAA,EAAA,CACA;AACK,QAAA,aAAaC,kBAAY,CAAC,WAA2B;AACnD,WAAA,iBAAiB,SAAS,OAAO,EAAE;AAAA,EAAA,GACxC,CAAC,gBAAgB,CAAC;AAErB,SACEC,2BAAA,IAAAC,cAAA,UAAA,EAAS,OAAc,YAAwB,oBAAoB,GACnE,UAAAD,2BAAA,IAACE,SAA6B,6BAAA,UAA7B,EAAsC,OAAO,aAC7C,UAACF,2BAAAA,IAAAG,SAAA,wBAAwB,UAAxB,EAAiC,OAAO,YACxC,UAAAH,2BAAAA,IAACI,SAAAA,0BAA0B,UAA1B,EAAmC,OAAO,SAC1C,UAACJ,+BAAAK,SAAAA,qBAAqB,UAArB,EAA8B,OAAO,SACpC,SAAA,CACF,EACD,CAAA,EACD,CAAA,GACD,EACD,CAAA;AAEF,GAAG,CAAC,EAAE,UAAU,OAAO,YAAY,gBAAgB;AAEjD,SAAAL,2BAAAA,IAACC,cAAAA,UAAS,EAAA,OAAc,YAAwB,oBAAoB,GACnE,UAAAD,2BAAAA,IAACM,aAAAA,QAAO,EAAA,OAAO,WACb,SAAA,CACF,EACD,CAAA;AAEF,CAAC;;"}
@@ -0,0 +1,36 @@
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, HasOne } from "@contember/react-binding";
5
+ import { useReferentiallyStableCallback } from "@contember/react-utils";
6
+ import { Repeater } from "@contember/react-repeater";
7
+ const SortableMultiSelect = Component(({ field, children, sortableBy, connectAt, options, onSelect, onUnselect }) => {
8
+ const list = useEntityList({ field });
9
+ const entitiesArr = useMemo(() => Array.from(list), [list]);
10
+ const selectedEntities = useMemo(() => Array.from(list).map((it) => it.getEntity({ field: connectAt }).id), [connectAt, list]);
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
+ Array.from(list).find((it) => it.getEntity({ field: connectAt }).id === entity.id)?.deleteEntity();
18
+ onUnselect?.(entity);
19
+ } else if (action === "select" && !isSelected2) {
20
+ list.createNewEntity((getEntity) => {
21
+ getEntity().connectEntityAtField({ field: connectAt }, entity);
22
+ onSelect?.(entity);
23
+ });
24
+ }
25
+ });
26
+ const isSelected = useCallback((entity) => {
27
+ return selectedEntities.includes(entity.id);
28
+ }, [selectedEntities]);
29
+ return /* @__PURE__ */ jsx(Repeater, { field, sortableBy, initialEntityCount: 0, children: /* @__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 }) }) }) }) });
30
+ }, ({ children, field, sortableBy, connectAt }) => {
31
+ return /* @__PURE__ */ jsx(Repeater, { field, sortableBy, initialEntityCount: 0, children: /* @__PURE__ */ jsx(HasOne, { field: connectAt, children }) });
32
+ });
33
+ export {
34
+ SortableMultiSelect
35
+ };
36
+ //# sourceMappingURL=SortableMultiSelect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SortableMultiSelect.js","sources":["../../../src/components/SortableMultiSelect.tsx"],"sourcesContent":["import React, { ReactNode, useCallback, useMemo } from 'react'\nimport { SelectCurrentEntitiesContext, SelectHandler, SelectHandleSelectContext, SelectIsSelectedContext, SelectOptionsContext } from '../contexts'\nimport { Component, EntityAccessor, HasOne, SugaredQualifiedEntityList, SugaredRelativeEntityList, SugaredRelativeSingleEntity, SugaredRelativeSingleField, useEntityList } from '@contember/react-binding'\nimport { useReferentiallyStableCallback } from '@contember/react-utils'\nimport { Repeater } from '@contember/react-repeater'\nimport { SelectEvents } from '../types'\n\nexport type SortableMultiSelectProps =\n\t& {\n\t\tchildren: ReactNode\n\t\tfield: SugaredRelativeEntityList['field']\n\t\toptions: SugaredQualifiedEntityList['entities']\n\t\tsortableBy: SugaredRelativeSingleField['field']\n\t\tconnectAt: SugaredRelativeSingleEntity['field']\n\t}\n\t& SelectEvents\n\nexport const SortableMultiSelect = Component(({ field, children, sortableBy, connectAt, options, onSelect, onUnselect }: SortableMultiSelectProps) => {\n\tconst list = useEntityList({ field })\n\tconst entitiesArr = useMemo(() => Array.from(list), [list])\n\n\tconst selectedEntities = useMemo(() => Array.from(list).map(it => it.getEntity({ field: connectAt }).id), [connectAt, list])\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\tArray.from(list).find(it => it.getEntity({ field: connectAt }).id === entity.id)?.deleteEntity()\n\t\t\tonUnselect?.(entity)\n\t\t} else if (action === 'select' && !isSelected) {\n\t\t\tlist.createNewEntity(getEntity => {\n\t\t\t\tgetEntity().connectEntityAtField({ field: connectAt }, entity)\n\t\t\t\tonSelect?.(entity)\n\t\t\t})\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<Repeater field={field} sortableBy={sortableBy} initialEntityCount={0}>\n\t\t\t<SelectCurrentEntitiesContext.Provider value={entitiesArr}>\n\t\t\t\t<SelectIsSelectedContext.Provider value={isSelected}>\n\t\t\t\t\t<SelectHandleSelectContext.Provider value={handler}>\n\t\t\t\t\t\t<SelectOptionsContext.Provider value={options}>\n\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t</SelectOptionsContext.Provider>\n\t\t\t\t\t</SelectHandleSelectContext.Provider>\n\t\t\t\t</SelectIsSelectedContext.Provider>\n\t\t\t</SelectCurrentEntitiesContext.Provider>\n\t\t</Repeater>\n\t)\n}, ({ children, field, sortableBy, connectAt }) => {\n\treturn (\n\t\t<Repeater field={field} sortableBy={sortableBy} initialEntityCount={0}>\n\t\t\t<HasOne field={connectAt}>\n\t\t\t\t{children}\n\t\t\t</HasOne>\n\t\t</Repeater>\n\t)\n})\n\n"],"names":["isSelected"],"mappings":";;;;;;AAiBa,MAAA,sBAAsB,UAAU,CAAC,EAAE,OAAO,UAAU,YAAY,WAAW,SAAS,UAAU,iBAA2C;AACrJ,QAAM,OAAO,cAAc,EAAE,MAAO,CAAA;AAC9B,QAAA,cAAc,QAAQ,MAAM,MAAM,KAAK,IAAI,GAAG,CAAC,IAAI,CAAC;AAEpD,QAAA,mBAAmB,QAAQ,MAAM,MAAM,KAAK,IAAI,EAAE,IAAI,CAAM,OAAA,GAAG,UAAU,EAAE,OAAO,WAAW,EAAE,EAAE,GAAG,CAAC,WAAW,IAAI,CAAC;AAE3H,QAAM,UAAU,+BAA8C,CAAC,QAAQ,SAAS,aAAa;AAC5F,UAAMA,cAAa,iBAAiB,SAAS,OAAO,EAAE;AACtD,QAAI,WAAW,UAAU;AACxB,eAASA,cAAa,aAAa;AAAA,IACpC;AACI,QAAA,WAAW,cAAcA,aAAY;AACxC,YAAM,KAAK,IAAI,EAAE,KAAK,CAAA,OAAM,GAAG,UAAU,EAAE,OAAO,UAAW,CAAA,EAAE,OAAO,OAAO,EAAE,GAAG;AAClF,mBAAa,MAAM;AAAA,IACT,WAAA,WAAW,YAAY,CAACA,aAAY;AAC9C,WAAK,gBAAgB,CAAa,cAAA;AACjC,kBAAA,EAAY,qBAAqB,EAAE,OAAO,UAAA,GAAa,MAAM;AAC7D,mBAAW,MAAM;AAAA,MAAA,CACjB;AAAA,IACF;AAAA,EAAA,CACA;AACK,QAAA,aAAa,YAAY,CAAC,WAA2B;AACnD,WAAA,iBAAiB,SAAS,OAAO,EAAE;AAAA,EAAA,GACxC,CAAC,gBAAgB,CAAC;AAErB,SACE,oBAAA,UAAA,EAAS,OAAc,YAAwB,oBAAoB,GACnE,UAAA,oBAAC,6BAA6B,UAA7B,EAAsC,OAAO,aAC7C,UAAC,oBAAA,wBAAwB,UAAxB,EAAiC,OAAO,YACxC,UAAA,oBAAC,0BAA0B,UAA1B,EAAmC,OAAO,SAC1C,UAAC,oBAAA,qBAAqB,UAArB,EAA8B,OAAO,SACpC,SAAA,CACF,EACD,CAAA,EACD,CAAA,GACD,EACD,CAAA;AAEF,GAAG,CAAC,EAAE,UAAU,OAAO,YAAY,gBAAgB;AAEjD,SAAA,oBAAC,UAAS,EAAA,OAAc,YAAwB,oBAAoB,GACnE,UAAA,oBAAC,QAAO,EAAA,OAAO,WACb,SAAA,CACF,EACD,CAAA;AAEF,CAAC;"}
@@ -0,0 +1,24 @@
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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contexts.cjs","sources":["../../src/contexts.ts"],"sourcesContent":["import { createRequiredContext } from '@contember/react-utils'\nimport { EntityAccessor, SugaredQualifiedEntityList } from '@contember/react-binding'\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":";;;AAGA,MAAM,gCAAgCA,WAAAA,sBAAwC,8BAA8B;AAE/F,MAAA,+BAA+B,8BAA8B,CAAC;AAC9D,MAAA,2BAA2B,8BAA8B,CAAC;AAIvE,MAAM,2BAA2BA,WAAAA,sBAA2D,yBAAyB;AAExG,MAAA,0BAA0B,yBAAyB,CAAC;AACpD,MAAA,sBAAsB,yBAAyB,CAAC;AAG7D,MAAM,6BAA6BA,WAAAA,sBAAqC,2BAA2B;AAEtF,MAAA,4BAA4B,2BAA2B,CAAC;AACxD,MAAA,wBAAwB,2BAA2B,CAAC;AAEjE,MAAM,wBAAwBA,WAAAA,sBAA8D,sBAAsB;AAErG,MAAA,uBAAuB,sBAAsB,CAAC;AAC9C,MAAA,mBAAmB,sBAAsB,CAAC;;;;;;;;;"}
@@ -0,0 +1,24 @@
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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contexts.js","sources":["../../src/contexts.ts"],"sourcesContent":["import { createRequiredContext } from '@contember/react-utils'\nimport { EntityAccessor, SugaredQualifiedEntityList } from '@contember/react-binding'\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":";AAGA,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;"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const contexts = require("./contexts.cjs");
4
+ const MultiSelect = require("./components/MultiSelect.cjs");
5
+ const Select = require("./components/Select.cjs");
6
+ const SelectNewItem = require("./components/SelectNewItem.cjs");
7
+ const SelectDataView = require("./components/SelectDataView.cjs");
8
+ const SelectEachItem = require("./components/SelectEachItem.cjs");
9
+ const SelectItemTrigger = require("./components/SelectItemTrigger.cjs");
10
+ const SelectOption = require("./components/SelectOption.cjs");
11
+ const SelectPlaceholder = require("./components/SelectPlaceholder.cjs");
12
+ const SortableMultiSelect = require("./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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,30 @@
1
+ import { SelectCurrentEntitiesContext, SelectHandleSelectContext, SelectIsSelectedContext, SelectOptionsContext, useSelectCurrentEntities, useSelectHandleSelect, useSelectIsSelected, useSelectOptions } from "./contexts.js";
2
+ import { MultiSelect } from "./components/MultiSelect.js";
3
+ import { Select } from "./components/Select.js";
4
+ import { SelectNewItem } from "./components/SelectNewItem.js";
5
+ import { SelectDataView } from "./components/SelectDataView.js";
6
+ import { SelectEachValue } from "./components/SelectEachItem.js";
7
+ import { SelectItemTrigger } from "./components/SelectItemTrigger.js";
8
+ import { SelectOption } from "./components/SelectOption.js";
9
+ import { SelectPlaceholder } from "./components/SelectPlaceholder.js";
10
+ import { SortableMultiSelect } from "./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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
@@ -0,0 +1,14 @@
1
+ import React, { ReactNode } from 'react';
2
+ import { SugaredQualifiedEntityList, SugaredRelativeEntityList } from '@contember/react-binding';
3
+ import { SelectEvents } from '../types';
4
+ export type MultiSelectProps = {
5
+ children: ReactNode;
6
+ field: SugaredRelativeEntityList['field'];
7
+ options: SugaredQualifiedEntityList['entities'];
8
+ } & SelectEvents;
9
+ export declare const MultiSelect: React.NamedExoticComponent<{
10
+ children: ReactNode;
11
+ field: SugaredRelativeEntityList['field'];
12
+ options: SugaredQualifiedEntityList['entities'];
13
+ } & SelectEvents>;
14
+ //# sourceMappingURL=MultiSelect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MultiSelect.d.ts","sourceRoot":"","sources":["../../../src/components/MultiSelect.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAwB,MAAM,OAAO,CAAA;AAE9D,OAAO,EAAsC,0BAA0B,EAAE,yBAAyB,EAAiB,MAAM,0BAA0B,CAAA;AAEnJ,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,MAAM,MAAM,gBAAgB,GACzB;IACD,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAA;IACzC,OAAO,EAAE,0BAA0B,CAAC,UAAU,CAAC,CAAA;CAC/C,GACC,YAAY,CAAA;AAEf,eAAO,MAAM,WAAW;cANZ,SAAS;WACZ,yBAAyB,CAAC,OAAO,CAAC;aAChC,0BAA0B,CAAC,UAAU,CAAC;iBA2C/C,CAAA"}
@@ -0,0 +1,14 @@
1
+ import React, { ReactNode } from 'react';
2
+ import { SugaredQualifiedEntityList, SugaredRelativeSingleEntity } from '@contember/react-binding';
3
+ import { SelectEvents } from '../types';
4
+ export type SelectProps = {
5
+ children: ReactNode;
6
+ field: SugaredRelativeSingleEntity['field'];
7
+ options: SugaredQualifiedEntityList['entities'];
8
+ } & SelectEvents;
9
+ export declare const Select: React.NamedExoticComponent<{
10
+ children: ReactNode;
11
+ field: SugaredRelativeSingleEntity['field'];
12
+ options: SugaredQualifiedEntityList['entities'];
13
+ } & SelectEvents>;
14
+ //# sourceMappingURL=Select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/components/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAwB,MAAM,OAAO,CAAA;AAE9D,OAAO,EAAqC,0BAA0B,EAAE,2BAA2B,EAAa,MAAM,0BAA0B,CAAA;AAEhJ,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,MAAM,MAAM,WAAW,GACpB;IACD,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,EAAE,2BAA2B,CAAC,OAAO,CAAC,CAAA;IAC3C,OAAO,EAAE,0BAA0B,CAAC,UAAU,CAAC,CAAA;CAC/C,GACC,YAAY,CAAA;AAEf,eAAO,MAAM,MAAM;cANP,SAAS;WACZ,2BAA2B,CAAC,OAAO,CAAC;aAClC,0BAA0B,CAAC,UAAU,CAAC;iBAyC/C,CAAA"}
@@ -0,0 +1,7 @@
1
+ import { ReactNode } from 'react';
2
+ import { DataViewProps } from '@contember/react-dataview';
3
+ export type SelectDataViewProps = Omit<DataViewProps, 'entities'> & {
4
+ children: ReactNode;
5
+ };
6
+ export declare const SelectDataView: (props: SelectDataViewProps) => import("react/jsx-runtime").JSX.Element;
7
+ //# sourceMappingURL=SelectDataView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectDataView.d.ts","sourceRoot":"","sources":["../../../src/components/SelectDataView.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAExC,OAAO,EAAE,aAAa,EAAY,MAAM,2BAA2B,CAAA;AAEnE,MAAM,MAAM,mBAAmB,GAC5B,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,GAC/B;IACD,QAAQ,EAAE,SAAS,CAAA;CACnB,CAAA;AAEF,eAAO,MAAM,cAAc,UAAW,mBAAmB,4CAMxD,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { ReactNode } from 'react';
2
+ export declare const SelectEachValue: ({ children }: {
3
+ children: ReactNode;
4
+ }) => import("react/jsx-runtime").JSX.Element[];
5
+ //# sourceMappingURL=SelectEachItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectEachItem.d.ts","sourceRoot":"","sources":["../../../src/components/SelectEachItem.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAKxC,eAAO,MAAM,eAAe;cAA8B,SAAS;+CAOlE,CAAA"}
@@ -0,0 +1,7 @@
1
+ import React, { ReactElement } from 'react';
2
+ export type SelectItemTriggerProps = {
3
+ children: ReactElement;
4
+ action?: 'select' | 'unselect' | 'toggle';
5
+ };
6
+ export declare const SelectItemTrigger: React.ForwardRefExoticComponent<SelectItemTriggerProps & React.RefAttributes<HTMLElement>>;
7
+ //# sourceMappingURL=SelectItemTrigger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectItemTrigger.d.ts","sourceRoot":"","sources":["../../../src/components/SelectItemTrigger.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAc,YAAY,EAAe,MAAM,OAAO,CAAA;AAKpE,MAAM,MAAM,sBAAsB,GAAG;IACpC,QAAQ,EAAE,YAAY,CAAA;IACtB,MAAM,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAA;CACzC,CAAA;AAED,eAAO,MAAM,iBAAiB,4FAQ5B,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { ReactNode } from 'react';
2
+ export declare const SelectNewItem: ({ children }: {
3
+ children: ReactNode;
4
+ }) => import("react/jsx-runtime").JSX.Element | null;
5
+ //# sourceMappingURL=SelectNewItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectNewItem.d.ts","sourceRoot":"","sources":["../../../src/components/SelectNewItem.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAgC,MAAM,OAAO,CAAA;AAG/D,eAAO,MAAM,aAAa;cAA8B,SAAS;oDAgDhE,CAAA"}
@@ -0,0 +1,7 @@
1
+ import React, { ReactNode } from 'react';
2
+ export type SelectOptionProps = {
3
+ children: ReactNode;
4
+ action?: 'select' | 'unselect' | 'toggle';
5
+ };
6
+ export declare const SelectOption: React.ForwardRefExoticComponent<SelectOptionProps & React.RefAttributes<HTMLElement>>;
7
+ //# sourceMappingURL=SelectOption.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectOption.d.ts","sourceRoot":"","sources":["../../../src/components/SelectOption.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAc,SAAS,EAAE,MAAM,OAAO,CAAA;AAMpD,MAAM,MAAM,iBAAiB,GAAG;IAC/B,QAAQ,EAAE,SAAS,CAAA;IACnB,MAAM,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAA;CACzC,CAAA;AAED,eAAO,MAAM,YAAY,uFAUvB,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { ReactNode } from 'react';
2
+ export declare const SelectPlaceholder: ({ children }: {
3
+ children: ReactNode;
4
+ }) => import("react/jsx-runtime").JSX.Element | null;
5
+ //# sourceMappingURL=SelectPlaceholder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectPlaceholder.d.ts","sourceRoot":"","sources":["../../../src/components/SelectPlaceholder.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGxC,eAAO,MAAM,iBAAiB;cAA8B,SAAS;oDAGpE,CAAA"}
@@ -0,0 +1,18 @@
1
+ import React, { ReactNode } from 'react';
2
+ import { SugaredQualifiedEntityList, SugaredRelativeEntityList, SugaredRelativeSingleEntity, SugaredRelativeSingleField } from '@contember/react-binding';
3
+ import { SelectEvents } from '../types';
4
+ export type SortableMultiSelectProps = {
5
+ children: ReactNode;
6
+ field: SugaredRelativeEntityList['field'];
7
+ options: SugaredQualifiedEntityList['entities'];
8
+ sortableBy: SugaredRelativeSingleField['field'];
9
+ connectAt: SugaredRelativeSingleEntity['field'];
10
+ } & SelectEvents;
11
+ export declare const SortableMultiSelect: React.NamedExoticComponent<{
12
+ children: ReactNode;
13
+ field: SugaredRelativeEntityList['field'];
14
+ options: SugaredQualifiedEntityList['entities'];
15
+ sortableBy: SugaredRelativeSingleField['field'];
16
+ connectAt: SugaredRelativeSingleEntity['field'];
17
+ } & SelectEvents>;
18
+ //# sourceMappingURL=SortableMultiSelect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SortableMultiSelect.d.ts","sourceRoot":"","sources":["../../../src/components/SortableMultiSelect.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAwB,MAAM,OAAO,CAAA;AAE9D,OAAO,EAAqC,0BAA0B,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,0BAA0B,EAAiB,MAAM,0BAA0B,CAAA;AAG3M,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,MAAM,MAAM,wBAAwB,GACjC;IACD,QAAQ,EAAE,SAAS,CAAA;IACnB,KAAK,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAA;IACzC,OAAO,EAAE,0BAA0B,CAAC,UAAU,CAAC,CAAA;IAC/C,UAAU,EAAE,0BAA0B,CAAC,OAAO,CAAC,CAAA;IAC/C,SAAS,EAAE,2BAA2B,CAAC,OAAO,CAAC,CAAA;CAC/C,GACC,YAAY,CAAA;AAEf,eAAO,MAAM,mBAAmB;cARpB,SAAS;WACZ,yBAAyB,CAAC,OAAO,CAAC;aAChC,0BAA0B,CAAC,UAAU,CAAC;gBACnC,0BAA0B,CAAC,OAAO,CAAC;eACpC,2BAA2B,CAAC,OAAO,CAAC;iBAkD/C,CAAA"}
@@ -0,0 +1,10 @@
1
+ export * from './MultiSelect';
2
+ export * from './Select';
3
+ export * from './SelectNewItem';
4
+ export * from './SelectDataView';
5
+ export * from './SelectEachItem';
6
+ export * from './SelectItemTrigger';
7
+ export * from './SelectOption';
8
+ export * from './SelectPlaceholder';
9
+ export * from './SortableMultiSelect';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA"}
@@ -0,0 +1,15 @@
1
+ import { EntityAccessor } from '@contember/react-binding';
2
+ /** @internal */
3
+ export declare const SelectCurrentEntitiesContext: import("react").Context<EntityAccessor[]>;
4
+ export declare const useSelectCurrentEntities: () => EntityAccessor[];
5
+ /** @internal */
6
+ export declare const SelectIsSelectedContext: import("react").Context<(entity: EntityAccessor) => boolean>;
7
+ export declare const useSelectIsSelected: () => (entity: EntityAccessor) => boolean;
8
+ export type SelectHandler = (entity: EntityAccessor, action?: 'select' | 'unselect' | 'toggle') => void;
9
+ /** @internal */
10
+ export declare const SelectHandleSelectContext: import("react").Context<SelectHandler>;
11
+ export declare const useSelectHandleSelect: () => SelectHandler;
12
+ /** @internal */
13
+ export declare const SelectOptionsContext: import("react").Context<string | import("@contember/react-binding").SugarableQualifiedEntityList>;
14
+ export declare const useSelectOptions: () => string | import("@contember/react-binding").SugarableQualifiedEntityList;
15
+ //# sourceMappingURL=contexts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contexts.d.ts","sourceRoot":"","sources":["../../src/contexts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAA8B,MAAM,0BAA0B,CAAA;AAGrF,gBAAgB;AAChB,eAAO,MAAM,4BAA4B,2CAAmC,CAAA;AAC5E,eAAO,MAAM,wBAAwB,wBAAmC,CAAA;AAKxE,gBAAgB;AAChB,eAAO,MAAM,uBAAuB,mCAF4B,cAAc,KAAK,OAAO,CAExB,CAAA;AAClE,eAAO,MAAM,mBAAmB,iBAHgC,cAAc,KAAK,OAGrB,CAAA;AAE9D,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,KAAK,IAAI,CAAA;AAEvG,gBAAgB;AAChB,eAAO,MAAM,yBAAyB,wCAAgC,CAAA;AACtE,eAAO,MAAM,qBAAqB,qBAAgC,CAAA;AAGlE,gBAAgB;AAChB,eAAO,MAAM,oBAAoB,mGAA2B,CAAA;AAC5D,eAAO,MAAM,gBAAgB,gFAA2B,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './components';
2
+ export * from './contexts';
3
+ export * from './types';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA"}