@tamagui/collection 2.0.0-rc.8 → 2.0.0

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.
@@ -5,75 +5,84 @@ import React from "react";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  function createCollection(name) {
7
7
  const {
8
- Provider: CollectionProviderImpl,
9
- useStyledContext: useCollectionContext
10
- } = createStyledContext({
11
- collectionRef: {
12
- current: void 0
13
- },
14
- itemMap: /* @__PURE__ */new Map()
15
- }, "Toast"),
16
- CollectionProvider = props => {
17
- const {
18
- scope,
19
- children
20
- } = props,
21
- ref = React.useRef(void 0),
22
- itemMap = React.useRef(/* @__PURE__ */new Map()).current;
23
- return /* @__PURE__ */jsx(CollectionProviderImpl, {
24
- scope,
25
- itemMap,
26
- collectionRef: ref,
27
- children
28
- });
29
- };
8
+ Provider: CollectionProviderImpl,
9
+ useStyledContext: useCollectionContext
10
+ } = createStyledContext({
11
+ collectionRef: {
12
+ current: void 0
13
+ },
14
+ itemMap: /* @__PURE__ */new Map()
15
+ }, "Toast");
16
+ const CollectionProvider = props => {
17
+ const {
18
+ scope,
19
+ children
20
+ } = props;
21
+ const ref = React.useRef(void 0);
22
+ const itemMap = React.useRef(/* @__PURE__ */new Map()).current;
23
+ return /* @__PURE__ */jsx(CollectionProviderImpl, {
24
+ scope,
25
+ itemMap,
26
+ collectionRef: ref,
27
+ children
28
+ });
29
+ };
30
30
  CollectionProvider.displayName = "CollectionProvider";
31
- const COLLECTION_SLOT_NAME = name + "CollectionSlot",
32
- CollectionSlot = React.forwardRef((props, forwardedRef) => {
33
- const {
34
- scope,
35
- children
36
- } = props,
37
- context = useCollectionContext(scope),
38
- composedRefs = useComposedRefs(forwardedRef, context.collectionRef);
39
- return /* @__PURE__ */jsx(Slot, {
40
- ref: composedRefs,
41
- children
42
- });
31
+ const COLLECTION_SLOT_NAME = name + "CollectionSlot";
32
+ const CollectionSlot = React.forwardRef((props, forwardedRef) => {
33
+ const {
34
+ scope,
35
+ children
36
+ } = props;
37
+ const context = useCollectionContext(scope);
38
+ const composedRefs = useComposedRefs(forwardedRef, context.collectionRef);
39
+ return /* @__PURE__ */jsx(Slot, {
40
+ ref: composedRefs,
41
+ children
43
42
  });
43
+ });
44
44
  CollectionSlot.displayName = COLLECTION_SLOT_NAME;
45
- const ITEM_SLOT_NAME = name + "CollectionItemSlot",
46
- ITEM_DATA_ATTR = "data-collection-item",
47
- CollectionItemSlot = React.forwardRef((props, forwardedRef) => {
48
- const {
49
- scope,
50
- children,
51
- ...itemData
52
- } = props,
53
- ref = React.useRef(void 0),
54
- composedRefs = useComposedRefs(forwardedRef, ref),
55
- context = useCollectionContext(scope);
56
- return React.useEffect(() => (context.itemMap.set(ref, {
45
+ const ITEM_SLOT_NAME = name + "CollectionItemSlot";
46
+ const ITEM_DATA_ATTR = "data-collection-item";
47
+ const CollectionItemSlot = React.forwardRef((props, forwardedRef) => {
48
+ const {
49
+ scope,
50
+ children,
51
+ ...itemData
52
+ } = props;
53
+ const ref = React.useRef(void 0);
54
+ const composedRefs = useComposedRefs(forwardedRef, ref);
55
+ const context = useCollectionContext(scope);
56
+ React.useEffect(() => {
57
+ context.itemMap.set(ref, {
57
58
  ref,
58
59
  ...itemData
59
- }), () => {
60
- context.itemMap.delete(ref);
61
- })), /* @__PURE__ */jsx(Slot, {
62
- [ITEM_DATA_ATTR]: "",
63
- ref: composedRefs,
64
- children
65
60
  });
61
+ return () => void context.itemMap.delete(ref);
62
+ });
63
+ return /* @__PURE__ */jsx(Slot, {
64
+ ...{
65
+ [ITEM_DATA_ATTR]: ""
66
+ },
67
+ ref: composedRefs,
68
+ children
66
69
  });
70
+ });
67
71
  CollectionItemSlot.displayName = ITEM_SLOT_NAME;
68
72
  function useCollection(scope) {
69
73
  const context = useCollectionContext(scope);
70
- return React.useCallback(() => {
71
- if (!isWeb) return [];
74
+ const getItems = React.useCallback(() => {
75
+ if (!isWeb) {
76
+ return [];
77
+ }
72
78
  const collectionNode = context.collectionRef.current;
73
79
  if (!collectionNode) return [];
74
80
  const orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));
75
- return Array.from(context.itemMap.values()).sort((a, b) => orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current));
81
+ const items = Array.from(context.itemMap.values());
82
+ const orderedItems = items.sort((a, b) => orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current));
83
+ return orderedItems;
76
84
  }, [context.collectionRef, context.itemMap]);
85
+ return getItems;
77
86
  }
78
87
  return [{
79
88
  Provider: CollectionProvider,
@@ -1 +1 @@
1
- {"version":3,"names":["useComposedRefs","isWeb","Slot","createStyledContext","React","jsx","createCollection","name","Provider","CollectionProviderImpl","useStyledContext","useCollectionContext","collectionRef","current","itemMap","Map","CollectionProvider","props","scope","children","ref","useRef","displayName","COLLECTION_SLOT_NAME","CollectionSlot","forwardRef","forwardedRef","context","composedRefs","ITEM_SLOT_NAME","ITEM_DATA_ATTR","CollectionItemSlot","itemData","useEffect","set","delete","useCollection","useCallback","collectionNode","orderedNodes","Array","from","querySelectorAll","values","sort","a","b","indexOf","ItemSlot"],"sources":["../../src/Collection.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useComposedRefs","isWeb","Slot","createStyledContext","React","jsx","createCollection","name","Provider","CollectionProviderImpl","useStyledContext","useCollectionContext","collectionRef","current","itemMap","Map","CollectionProvider","props","scope","children","ref","useRef","displayName","COLLECTION_SLOT_NAME","CollectionSlot","forwardRef","forwardedRef","context","composedRefs","ITEM_SLOT_NAME","ITEM_DATA_ATTR","CollectionItemSlot","itemData","useEffect","set","delete","useCollection","getItems","useCallback","collectionNode","orderedNodes","Array","from","querySelectorAll","items","values","orderedItems","sort","a","b","indexOf","ItemSlot"],"sources":["../../src/Collection.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -5,81 +5,85 @@ import { Slot, createStyledContext } from "@tamagui/core";
5
5
  import React from "react";
6
6
  function createCollection(name) {
7
7
  var {
8
- Provider: CollectionProviderImpl,
9
- useStyledContext: useCollectionContext
10
- } = createStyledContext({
11
- collectionRef: {
12
- current: void 0
13
- },
14
- itemMap: /* @__PURE__ */new Map()
15
- }, "Toast"),
16
- CollectionProvider = function (props) {
17
- var {
18
- scope,
19
- children
20
- } = props,
21
- ref = React.useRef(void 0),
22
- itemMap = React.useRef(/* @__PURE__ */new Map()).current;
23
- return /* @__PURE__ */_jsx(CollectionProviderImpl, {
24
- scope,
25
- itemMap,
26
- collectionRef: ref,
27
- children
28
- });
29
- };
8
+ Provider: CollectionProviderImpl,
9
+ useStyledContext: useCollectionContext
10
+ } = createStyledContext({
11
+ collectionRef: {
12
+ current: void 0
13
+ },
14
+ itemMap: /* @__PURE__ */new Map()
15
+ }, "Toast");
16
+ var CollectionProvider = function (props) {
17
+ var {
18
+ scope,
19
+ children
20
+ } = props;
21
+ var ref = React.useRef(void 0);
22
+ var itemMap = React.useRef(/* @__PURE__ */new Map()).current;
23
+ return /* @__PURE__ */_jsx(CollectionProviderImpl, {
24
+ scope,
25
+ itemMap,
26
+ collectionRef: ref,
27
+ children
28
+ });
29
+ };
30
30
  CollectionProvider.displayName = "CollectionProvider";
31
- var COLLECTION_SLOT_NAME = name + "CollectionSlot",
32
- CollectionSlot = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
33
- var {
34
- scope,
35
- children
36
- } = props,
37
- context = useCollectionContext(scope),
38
- composedRefs = useComposedRefs(forwardedRef, context.collectionRef);
39
- return /* @__PURE__ */_jsx(Slot, {
40
- ref: composedRefs,
41
- children
42
- });
31
+ var COLLECTION_SLOT_NAME = name + "CollectionSlot";
32
+ var CollectionSlot = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
33
+ var {
34
+ scope,
35
+ children
36
+ } = props;
37
+ var context = useCollectionContext(scope);
38
+ var composedRefs = useComposedRefs(forwardedRef, context.collectionRef);
39
+ return /* @__PURE__ */_jsx(Slot, {
40
+ ref: composedRefs,
41
+ children
43
42
  });
43
+ });
44
44
  CollectionSlot.displayName = COLLECTION_SLOT_NAME;
45
- var ITEM_SLOT_NAME = name + "CollectionItemSlot",
46
- ITEM_DATA_ATTR = "data-collection-item",
47
- CollectionItemSlot = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
48
- var {
49
- scope,
50
- children,
51
- ...itemData
52
- } = props,
53
- ref = React.useRef(void 0),
54
- composedRefs = useComposedRefs(forwardedRef, ref),
55
- context = useCollectionContext(scope);
56
- return React.useEffect(function () {
57
- return context.itemMap.set(ref, {
58
- ref,
59
- ...itemData
60
- }), function () {
61
- context.itemMap.delete(ref);
62
- };
63
- }), /* @__PURE__ */_jsx(Slot, {
64
- [ITEM_DATA_ATTR]: "",
65
- ref: composedRefs,
66
- children
45
+ var ITEM_SLOT_NAME = name + "CollectionItemSlot";
46
+ var ITEM_DATA_ATTR = "data-collection-item";
47
+ var CollectionItemSlot = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
48
+ var {
49
+ scope,
50
+ children,
51
+ ...itemData
52
+ } = props;
53
+ var ref = React.useRef(void 0);
54
+ var composedRefs = useComposedRefs(forwardedRef, ref);
55
+ var context = useCollectionContext(scope);
56
+ React.useEffect(function () {
57
+ context.itemMap.set(ref, {
58
+ ref,
59
+ ...itemData
67
60
  });
61
+ return function () {
62
+ return void context.itemMap.delete(ref);
63
+ };
68
64
  });
65
+ return /* @__PURE__ */_jsx(Slot, {
66
+ [ITEM_DATA_ATTR]: "",
67
+ ref: composedRefs,
68
+ children
69
+ });
70
+ });
69
71
  CollectionItemSlot.displayName = ITEM_SLOT_NAME;
70
72
  function useCollection(scope) {
71
- var context = useCollectionContext(scope),
72
- getItems = React.useCallback(function () {
73
- if (!isWeb) return [];
74
- var collectionNode = context.collectionRef.current;
75
- if (!collectionNode) return [];
76
- var orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`)),
77
- items = Array.from(context.itemMap.values()),
78
- orderedItems = items.sort(function (a, b) {
79
- return orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current);
80
- });
81
- return orderedItems;
82
- }, [context.collectionRef, context.itemMap]);
73
+ var context = useCollectionContext(scope);
74
+ var getItems = React.useCallback(function () {
75
+ if (!isWeb) {
76
+ return [];
77
+ }
78
+ var collectionNode = context.collectionRef.current;
79
+ if (!collectionNode) return [];
80
+ var orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));
81
+ var items = Array.from(context.itemMap.values());
82
+ var orderedItems = items.sort(function (a, b) {
83
+ return orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current);
84
+ });
85
+ return orderedItems;
86
+ }, [context.collectionRef, context.itemMap]);
83
87
  return getItems;
84
88
  }
85
89
  return [{
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","useComposedRefs","isWeb","Slot","createStyledContext","React","createCollection","name","Provider","CollectionProviderImpl","useStyledContext","useCollectionContext","collectionRef","current","itemMap","Map","CollectionProvider","props","scope","children","ref","useRef","displayName","COLLECTION_SLOT_NAME","CollectionSlot","forwardRef","forwardedRef","context","composedRefs","ITEM_SLOT_NAME","ITEM_DATA_ATTR","CollectionItemSlot","itemData","useEffect","set","delete","useCollection","getItems","useCallback"],"sources":["../../src/Collection.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAA,IAAAC,IAAA,2BAAuB;AAChC,SAASC,eAAa;AAEtB,SAASC,KAAA,QAAM,oBAA2B;AAC1C,SAAOC,IAAA,EAAAC,mBAAW;AAkDZ,OAAAC,KAAA;AAvCN,SAASC,iBACPC,IAAA,EACA;EAmBA;MAAMC,QAAE,EAAAC,sBAAU;MAAAC,gBAAwB,EAAAC;IAAkB,IAAqBP,mBAC/E;MACEQ,aAAA;QACEC,OAAA;MAAoC;MAEtCC,OAAA,qBAAAC,GAAA;IAAA,GACA;IAAAC,kBAAA,YAAAA,CAAAC,KAAA;MACF,IAEI;UAAAC,KAAA;UAAAC;QAIF,CAAC,GAAAF,KAAA;QAAUG,GAAA,GAAAf,KAAA,CAAAgB,MAAA;QAAAP,OAAA,GAAAT,KAAA,CAAAgB,MAAA,oBAAAN,GAAA,IAAAF,OAAA;MACb,OAAM,eAASb,IAAS,CAAIS,sBACV;QAElBS,KACE;QAIJJ,OAAA;QAEAF,aAAA,EAAmBQ,GAAA;QAMnBD;MAME;IAGA;EACFH,kBAAC,CAAAM,WAAA;EAED,IAAAC,oBAAe,GAAAhB,IAAc;IAAAiB,cAAA,kBAAAnB,KAAA,CAAAoB,UAAA,WAAAR,KAAA,EAAAS,YAAA;MAM7B,IAAM;UAAAR,KAAA;UAAAC;QAAiB,IAAAF,KAAO;QAAAU,OAAA,GAAAhB,oBACxB,CAAAO,KAAiB;QAAAU,YAAA,GAAA3B,eAMjB,CAAAyB,YAAqB,EAAAC,OAAM,CAAAf,aAGvB;MACR,OAAM,eAASZ,IAAU,CAAGG,IAAA;QAK5BiB,GAAA,EAAAQ,YAAM;QAEcT;MAA0B,EAC7C;IAOH,CAAC;EAEDK,cAAA,CAAAF,WAAmB,GAAAC,oBAAc;EAMjC,IAAAM,cAAS,GAAAtB,IAAc,uBAAe;IAAAuB,cAAA;IAAAC,kBAAA,kBAAA1B,KAAA,CAAAoB,UAAA,WAAAR,KAAA,EAAAS,YAAA;MACpC;UAAMR,KAAA;UAAAC,QAAU;UAAA,GAAAa;QAAA,IAAqBf,KAAK;QAAAG,GAAA,GAAAf,KAAA,CAAAgB,MAAA;QAAAO,YAAA,GAAA3B,eAAA,CAAAyB,YAAA,EAAAN,GAAA;QAAAO,OAAA,GAAAhB,oBAAA,CAAAO,KAAA;MAqB1C,OAnBiBb,KAAA,CAAM4B,SAAA,aAAkB;QACvC,OAAKN,OAAA,CAAAb,OAAA,CAAAoB,GAAA,CAAAd,GAAA;UACHA,GAAA;UAGF,GAAAY;QACA,IAAI,YAAC;UACLL,OAAM,CAAAb,OAAA,CAAAqB,MAAe,CAAAf,GAAM;QAAA;MAC4B,EACvD,iBAAApB,IAAA,CAAAG,IAAA;QAOA,CAAA2B,cANoB,GAAK;QACEV,GACxB,EAAAQ,YACC;QAEJT;MAEF;IAGF;EAEAY,kBAAO,CAAAT,WAAA,GAAAO,cAAA;EAAA,SACHO,aAAUA,CAAAlB,KAAA;IACZ,IAAAS,OAAA,GAAAhB,oBAAA,CAAAO,KAAA;MAAAmB,QAAA,GAAAhC,KAAA,CAAAiC,WAAA;QACF,KAAApC,KAAA,EACF","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","useComposedRefs","isWeb","Slot","createStyledContext","React","createCollection","name","Provider","CollectionProviderImpl","useStyledContext","useCollectionContext","collectionRef","current","itemMap","Map","CollectionProvider","props","scope","children","ref","useRef","displayName","COLLECTION_SLOT_NAME","CollectionSlot","forwardRef","forwardedRef","context","composedRefs","ITEM_SLOT_NAME","ITEM_DATA_ATTR","CollectionItemSlot","itemData","useEffect","set","delete","useCollection","getItems","useCallback","collectionNode"],"sources":["../../src/Collection.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAA,IAAAC,IAAA,2BAAuB;AAChC,SAASC,eAAa;AAEtB,SAASC,KAAA,QAAM,oBAA2B;AAC1C,SAAOC,IAAA,EAAAC,mBAAW;AAkDZ,OAAAC,KAAA;AAvCN,SAASC,iBACPC,IAAA,EACA;EAmBA;IAAMC,QAAE,EAAAC,sBAAU;IAAAC,gBAAwB,EAAAC;EAAkB,IAAqBP,mBAC/E;IACEQ,aAAA;MACEC,OAAA;IAAoC;IAEtCC,OAAA,qBAAAC,GAAA;EAAA,GACA;EACF,IAAAC,kBAAA,YAAAA,CAAAC,KAAA;IAEF,IAAM;MAAAC,KAAA;MAAAC;IAAA,IAIDF,KAAA;IACH,IAAAG,GAAM,GAAEf,KAAO,CAAAgB,MAAA,MAAa;IAC5B,IAAAP,OAAM,GAAMT,KAAM,CAAAgB,MAA0B,gBAAS,IAAAN,GAAA,IAAAF,OAAA;IACrD,OAAM,eAAgBb,IAAA,CAAAS,sBAAoC;MAC1DS,KACE;MAIJJ,OAAA;MAEAF,aAAA,EAAmBQ,GAAA;MAMnBD;IAEA;EAIE;EACAH,kBAAgB,CAAAM,WAAA,uBAA0B;EAC1C,IAAAC,oBAAqB,GAAAhB,IAAA,mBAAgB;EACrC,IAAAiB,cAAO,kBAAMnB,KAAK,CAAAoB,UAAA,WAAeR,KAAS,EAAAS,YAAA;IAC3C;MAAAR,KAAA;MAAAC;IAAA,IAAAF,KAAA;IAED,IAAAU,OAAA,GAAehB,oBAAc,CAAAO,KAAA;IAM7B,IAAMU,YAAA,GAAA3B,eAAwB,CAAAyB,YAAA,EAAAC,OAAA,CAAAf,aAAA;IAC9B,OAAM,eAAiBZ,IAAA,CAAAG,IAAA;MAMvBiB,GAAM,EAAAQ,YAAA;MAIJT;IACA;EACA;EACAK,cAAM,CAAAF,WAAU,GAAAC,oBAA0B;EAE1C,IAAAM,cAAgB,GAAAtB,IAAM;EACpB,IAAAuB,cAAQ,GAAQ,sBAAoB;EACpC,IAAAC,kBAAkB,kBAAgB1B,KAAO,CAAAoB,UAAG,WAAAR,KAAA,EAAAS,YAAA;IAC9C,IAAC;MAAAR,KAAA;MAAAC,QAAA;MAAA,GAAAa;IAAA,IAAAf,KAAA;IAED,IAAAG,GACE,GAAAf,KAAA,CAAAgB,MAAA,MAAC;IAIJ,IAAAO,YAAA,GAAA3B,eAAA,CAAAyB,YAAA,EAAAN,GAAA;IAED,IAAAO,OAAA,GAAAhB,oBAAiC,CAAAO,KAAA;IAMjCb,KAAA,CAAA4B,SAAS,aAAc;MACrBN,OAAM,CAAAb,OAAU,CAAAoB,GAAA,CAAAd,GAAA;QAEhBA,GAAM;QACJ,GAAKY;MACH;MACF;QAEA,OAAM,KAAAL,OAAA,CAAAb,OAAiB,CAAAqB,MAAQ,CAAAf,GAAA;MAC/B;IACA;IAA2B,OACzB,eAAepB,IAAA,CAAAG,IAAA;MACjB,CAAA2B,cAAA;MACAV,GAAA,EAAAQ,YAAc;MACdT;IAA2B;EAG2B;EAEtDY,kBAAO,CAAAT,WAAA,GAAAO,cAAA;EAAA,SACLO,aAAQA,CAAAlB,KAAA,EAAe;IAE3B,IAAAS,OAAO,GAAAhB,oBAAA,CAAAO,KAAA;IACT,IAAAmB,QAAA,GAAAhC,KAAA,CAAAiC,WAAA;MAEA,IAAO,CAAApC,KAAA;QACH,SAAU;MACZ;MACF,IAAAqC,cAAA,GAAAZ,OAAA,CAAAf,aAAA,CAAAC,OAAA;MACF,KAAA0B,cAAA","ignoreList":[]}
package/dist/esm/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export * from "./Collection";
1
+ export * from "./Collection.mjs";
2
2
  //# sourceMappingURL=index.js.map
@@ -1,6 +1 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/index.ts"],
4
- "mappings": "AAAA,cAAc;",
5
- "names": []
6
- }
1
+ {"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,cAAc","ignoreList":[]}
@@ -5,75 +5,84 @@ import React from "react";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  function createCollection(name) {
7
7
  const {
8
- Provider: CollectionProviderImpl,
9
- useStyledContext: useCollectionContext
10
- } = createStyledContext({
11
- collectionRef: {
12
- current: void 0
13
- },
14
- itemMap: /* @__PURE__ */new Map()
15
- }, "Toast"),
16
- CollectionProvider = props => {
17
- const {
18
- scope,
19
- children
20
- } = props,
21
- ref = React.useRef(void 0),
22
- itemMap = React.useRef(/* @__PURE__ */new Map()).current;
23
- return /* @__PURE__ */jsx(CollectionProviderImpl, {
24
- scope,
25
- itemMap,
26
- collectionRef: ref,
27
- children
28
- });
29
- };
8
+ Provider: CollectionProviderImpl,
9
+ useStyledContext: useCollectionContext
10
+ } = createStyledContext({
11
+ collectionRef: {
12
+ current: void 0
13
+ },
14
+ itemMap: /* @__PURE__ */new Map()
15
+ }, "Toast");
16
+ const CollectionProvider = props => {
17
+ const {
18
+ scope,
19
+ children
20
+ } = props;
21
+ const ref = React.useRef(void 0);
22
+ const itemMap = React.useRef(/* @__PURE__ */new Map()).current;
23
+ return /* @__PURE__ */jsx(CollectionProviderImpl, {
24
+ scope,
25
+ itemMap,
26
+ collectionRef: ref,
27
+ children
28
+ });
29
+ };
30
30
  CollectionProvider.displayName = "CollectionProvider";
31
- const COLLECTION_SLOT_NAME = name + "CollectionSlot",
32
- CollectionSlot = React.forwardRef((props, forwardedRef) => {
33
- const {
34
- scope,
35
- children
36
- } = props,
37
- context = useCollectionContext(scope),
38
- composedRefs = useComposedRefs(forwardedRef, context.collectionRef);
39
- return /* @__PURE__ */jsx(Slot, {
40
- ref: composedRefs,
41
- children
42
- });
31
+ const COLLECTION_SLOT_NAME = name + "CollectionSlot";
32
+ const CollectionSlot = React.forwardRef((props, forwardedRef) => {
33
+ const {
34
+ scope,
35
+ children
36
+ } = props;
37
+ const context = useCollectionContext(scope);
38
+ const composedRefs = useComposedRefs(forwardedRef, context.collectionRef);
39
+ return /* @__PURE__ */jsx(Slot, {
40
+ ref: composedRefs,
41
+ children
43
42
  });
43
+ });
44
44
  CollectionSlot.displayName = COLLECTION_SLOT_NAME;
45
- const ITEM_SLOT_NAME = name + "CollectionItemSlot",
46
- ITEM_DATA_ATTR = "data-collection-item",
47
- CollectionItemSlot = React.forwardRef((props, forwardedRef) => {
48
- const {
49
- scope,
50
- children,
51
- ...itemData
52
- } = props,
53
- ref = React.useRef(void 0),
54
- composedRefs = useComposedRefs(forwardedRef, ref),
55
- context = useCollectionContext(scope);
56
- return React.useEffect(() => (context.itemMap.set(ref, {
45
+ const ITEM_SLOT_NAME = name + "CollectionItemSlot";
46
+ const ITEM_DATA_ATTR = "data-collection-item";
47
+ const CollectionItemSlot = React.forwardRef((props, forwardedRef) => {
48
+ const {
49
+ scope,
50
+ children,
51
+ ...itemData
52
+ } = props;
53
+ const ref = React.useRef(void 0);
54
+ const composedRefs = useComposedRefs(forwardedRef, ref);
55
+ const context = useCollectionContext(scope);
56
+ React.useEffect(() => {
57
+ context.itemMap.set(ref, {
57
58
  ref,
58
59
  ...itemData
59
- }), () => {
60
- context.itemMap.delete(ref);
61
- })), /* @__PURE__ */jsx(Slot, {
62
- [ITEM_DATA_ATTR]: "",
63
- ref: composedRefs,
64
- children
65
60
  });
61
+ return () => void context.itemMap.delete(ref);
62
+ });
63
+ return /* @__PURE__ */jsx(Slot, {
64
+ ...{
65
+ [ITEM_DATA_ATTR]: ""
66
+ },
67
+ ref: composedRefs,
68
+ children
66
69
  });
70
+ });
67
71
  CollectionItemSlot.displayName = ITEM_SLOT_NAME;
68
72
  function useCollection(scope) {
69
73
  const context = useCollectionContext(scope);
70
- return React.useCallback(() => {
71
- if (!isWeb) return [];
74
+ const getItems = React.useCallback(() => {
75
+ if (!isWeb) {
76
+ return [];
77
+ }
72
78
  const collectionNode = context.collectionRef.current;
73
79
  if (!collectionNode) return [];
74
80
  const orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));
75
- return Array.from(context.itemMap.values()).sort((a, b) => orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current));
81
+ const items = Array.from(context.itemMap.values());
82
+ const orderedItems = items.sort((a, b) => orderedNodes.indexOf(a.ref.current) - orderedNodes.indexOf(b.ref.current));
83
+ return orderedItems;
76
84
  }, [context.collectionRef, context.itemMap]);
85
+ return getItems;
77
86
  }
78
87
  return [{
79
88
  Provider: CollectionProvider,
@@ -1 +1 @@
1
- {"version":3,"names":["useComposedRefs","isWeb","Slot","createStyledContext","React","jsx","createCollection","name","Provider","CollectionProviderImpl","useStyledContext","useCollectionContext","collectionRef","current","itemMap","Map","CollectionProvider","props","scope","children","ref","useRef","displayName","COLLECTION_SLOT_NAME","CollectionSlot","forwardRef","forwardedRef","context","composedRefs","ITEM_SLOT_NAME","ITEM_DATA_ATTR","CollectionItemSlot","itemData","useEffect","set","delete","useCollection","useCallback","collectionNode","orderedNodes","Array","from","querySelectorAll","values","sort","a","b","indexOf","ItemSlot"],"sources":["../../src/Collection.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useComposedRefs","isWeb","Slot","createStyledContext","React","jsx","createCollection","name","Provider","CollectionProviderImpl","useStyledContext","useCollectionContext","collectionRef","current","itemMap","Map","CollectionProvider","props","scope","children","ref","useRef","displayName","COLLECTION_SLOT_NAME","CollectionSlot","forwardRef","forwardedRef","context","composedRefs","ITEM_SLOT_NAME","ITEM_DATA_ATTR","CollectionItemSlot","itemData","useEffect","set","delete","useCollection","getItems","useCallback","collectionNode","orderedNodes","Array","from","querySelectorAll","items","values","orderedItems","sort","a","b","indexOf","ItemSlot"],"sources":["../../src/Collection.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}