@cdx-ui/primitives 0.0.1-beta.45 → 0.0.1-beta.47
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/lib/commonjs/index.js +9 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/select/createSelectIcon.js +3 -1
- package/lib/commonjs/select/createSelectIcon.js.map +1 -1
- package/lib/commonjs/utils/dataAttributes.js +6 -25
- package/lib/commonjs/utils/dataAttributes.js.map +1 -1
- package/lib/commonjs/utils/domDataAttributes.js +34 -0
- package/lib/commonjs/utils/domDataAttributes.js.map +1 -0
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/select/createSelectIcon.js +3 -1
- package/lib/module/select/createSelectIcon.js.map +1 -1
- package/lib/module/utils/dataAttributes.js +4 -22
- package/lib/module/utils/dataAttributes.js.map +1 -1
- package/lib/module/utils/domDataAttributes.js +30 -0
- package/lib/module/utils/domDataAttributes.js.map +1 -0
- package/lib/typescript/index.d.ts +1 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/select/createSelectIcon.d.ts.map +1 -1
- package/lib/typescript/utils/dataAttributes.d.ts +4 -10
- package/lib/typescript/utils/dataAttributes.d.ts.map +1 -1
- package/lib/typescript/utils/domDataAttributes.d.ts +15 -0
- package/lib/typescript/utils/domDataAttributes.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/index.ts +1 -0
- package/src/select/createSelectIcon.tsx +2 -1
- package/src/utils/dataAttributes.ts +4 -25
- package/src/utils/domDataAttributes.ts +32 -0
package/lib/commonjs/index.js
CHANGED
|
@@ -5,7 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
var _exportNames = {
|
|
7
7
|
OverlayInsetsProvider: true,
|
|
8
|
-
dataAttributes: true
|
|
8
|
+
dataAttributes: true,
|
|
9
|
+
domDataAttributes: true
|
|
9
10
|
};
|
|
10
11
|
Object.defineProperty(exports, "OverlayInsetsProvider", {
|
|
11
12
|
enumerable: true,
|
|
@@ -19,6 +20,12 @@ Object.defineProperty(exports, "dataAttributes", {
|
|
|
19
20
|
return _dataAttributes.dataAttributes;
|
|
20
21
|
}
|
|
21
22
|
});
|
|
23
|
+
Object.defineProperty(exports, "domDataAttributes", {
|
|
24
|
+
enumerable: true,
|
|
25
|
+
get: function () {
|
|
26
|
+
return _domDataAttributes.domDataAttributes;
|
|
27
|
+
}
|
|
28
|
+
});
|
|
22
29
|
var _avatar = require("./avatar");
|
|
23
30
|
Object.keys(_avatar).forEach(function (key) {
|
|
24
31
|
if (key === "default" || key === "__esModule") return;
|
|
@@ -213,4 +220,5 @@ Object.keys(_radio).forEach(function (key) {
|
|
|
213
220
|
});
|
|
214
221
|
});
|
|
215
222
|
var _dataAttributes = require("./utils/dataAttributes");
|
|
223
|
+
var _domDataAttributes = require("./utils/domDataAttributes");
|
|
216
224
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_avatar","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_button","_chip","_checkbox","_dialog","_field","_form","_input","_otpInput","_link","_listItem","_overlay","_select","_switch","_tile","_progress","_radio","_dataAttributes"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_avatar","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_button","_chip","_checkbox","_dialog","_field","_form","_input","_otpInput","_link","_listItem","_overlay","_select","_switch","_tile","_progress","_radio","_dataAttributes","_domDataAttributes"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -19,7 +19,8 @@ const createSelectIcon = BaseIcon => /*#__PURE__*/(0, _react.forwardRef)((props,
|
|
|
19
19
|
const {
|
|
20
20
|
required,
|
|
21
21
|
invalid,
|
|
22
|
-
readOnly
|
|
22
|
+
readOnly,
|
|
23
|
+
open
|
|
23
24
|
} = (0, _context.useSelectContext)();
|
|
24
25
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(BaseIcon, {
|
|
25
26
|
ref: ref,
|
|
@@ -32,6 +33,7 @@ const createSelectIcon = BaseIcon => /*#__PURE__*/(0, _react.forwardRef)((props,
|
|
|
32
33
|
required,
|
|
33
34
|
invalid,
|
|
34
35
|
readonly: readOnly,
|
|
36
|
+
state: open ? 'open' : 'closed',
|
|
35
37
|
slot: 'select-icon'
|
|
36
38
|
}),
|
|
37
39
|
...props
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_dataAttributes","_context","_jsxRuntime","createSelectIcon","BaseIcon","forwardRef","props","ref","hover","focus","active","disabled","focusVisible","useSelectTriggerContext","required","invalid","readOnly","useSelectContext","jsx","dataAttributes","readonly","slot","exports"],"sourceRoot":"../../../src","sources":["select/createSelectIcon.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAAsE,IAAAG,WAAA,GAAAH,OAAA;AAE/D,MAAMI,gBAAgB,GAAQC,QAAgC,iBACnE,IAAAC,iBAAU,EAAC,CAACC,KAAU,EAAEC,GAAS,KAAK;EACpC,MAAM;IAAEC,KAAK;IAAEC,KAAK;IAAEC,MAAM;IAAEC,QAAQ;IAAEC;EAAa,CAAC,GAAG,IAAAC,gCAAuB,EAAC,CAAC;EAClF,MAAM;IAAEC,QAAQ;IAAEC,OAAO;IAAEC;
|
|
1
|
+
{"version":3,"names":["_react","require","_dataAttributes","_context","_jsxRuntime","createSelectIcon","BaseIcon","forwardRef","props","ref","hover","focus","active","disabled","focusVisible","useSelectTriggerContext","required","invalid","readOnly","open","useSelectContext","jsx","dataAttributes","readonly","state","slot","exports"],"sourceRoot":"../../../src","sources":["select/createSelectIcon.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAAsE,IAAAG,WAAA,GAAAH,OAAA;AAE/D,MAAMI,gBAAgB,GAAQC,QAAgC,iBACnE,IAAAC,iBAAU,EAAC,CAACC,KAAU,EAAEC,GAAS,KAAK;EACpC,MAAM;IAAEC,KAAK;IAAEC,KAAK;IAAEC,MAAM;IAAEC,QAAQ;IAAEC;EAAa,CAAC,GAAG,IAAAC,gCAAuB,EAAC,CAAC;EAClF,MAAM;IAAEC,QAAQ;IAAEC,OAAO;IAAEC,QAAQ;IAAEC;EAAK,CAAC,GAAG,IAAAC,yBAAgB,EAAC,CAAC;EAEhE,oBACE,IAAAhB,WAAA,CAAAiB,GAAA,EAACf,QAAQ;IACPG,GAAG,EAAEA,GAAI;IAAA,GACL,IAAAa,8BAAc,EAAC;MACjBZ,KAAK;MACLC,KAAK;MACLC,MAAM;MACNC,QAAQ;MACRC,YAAY;MACZE,QAAQ;MACRC,OAAO;MACPM,QAAQ,EAAEL,QAAQ;MAClBM,KAAK,EAAEL,IAAI,GAAG,MAAM,GAAG,QAAQ;MAC/BM,IAAI,EAAE;IACR,CAAC,CAAC;IAAA,GACGjB;EAAK,CACX,CAAC;AAEN,CAAC,CAAC;AAACkB,OAAA,CAAArB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
|
|
@@ -3,30 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
* Native: individual `data-*` props consumed by Uniwind.
|
|
11
|
-
* Web (.web.ts): a `dataSet` object consumed by React Native Web.
|
|
12
|
-
*
|
|
13
|
-
* Boolean values serialize to `"true"` / `"false"` strings.
|
|
14
|
-
* String values pass through as-is.
|
|
15
|
-
* Undefined values are omitted.
|
|
16
|
-
*/
|
|
17
|
-
|
|
18
|
-
function camelToKebab(str) {
|
|
19
|
-
return str.replaceAll(/[A-Z]/g, ch => `-${ch.toLowerCase()}`);
|
|
20
|
-
}
|
|
21
|
-
function dataAttributes(attrs) {
|
|
22
|
-
const result = {};
|
|
23
|
-
for (const key in attrs) {
|
|
24
|
-
const value = attrs[key];
|
|
25
|
-
if (value === undefined) {
|
|
26
|
-
continue;
|
|
27
|
-
}
|
|
28
|
-
result[`data-${camelToKebab(key)}`] = typeof value === 'boolean' ? String(value) : value;
|
|
6
|
+
Object.defineProperty(exports, "dataAttributes", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _domDataAttributes.domDataAttributes;
|
|
29
10
|
}
|
|
30
|
-
|
|
31
|
-
|
|
11
|
+
});
|
|
12
|
+
var _domDataAttributes = require("./domDataAttributes");
|
|
32
13
|
//# sourceMappingURL=dataAttributes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_domDataAttributes","require"],"sourceRoot":"../../../src","sources":["utils/dataAttributes.ts"],"mappings":";;;;;;;;;;;AAMA,IAAAA,kBAAA,GAAAC,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.domDataAttributes = domDataAttributes;
|
|
7
|
+
/**
|
|
8
|
+
* Produces `data-*` DOM attribute props for use on raw HTML elements (e.g. `<button>`).
|
|
9
|
+
*
|
|
10
|
+
* Unlike `dataAttributes`, which has a platform-specific `.web.ts` sibling that returns a
|
|
11
|
+
* `dataSet` object for React Native Web components, this file has no platform variant.
|
|
12
|
+
* The bundler therefore always resolves to this single implementation, making it safe to
|
|
13
|
+
* import from `.web.tsx` host components that render native DOM elements directly.
|
|
14
|
+
*
|
|
15
|
+
* Boolean values serialize to `"true"` / `"false"` strings.
|
|
16
|
+
* String values pass through as-is.
|
|
17
|
+
* Undefined values are omitted.
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
function camelToKebab(str) {
|
|
21
|
+
return str.replaceAll(/[A-Z]/g, ch => `-${ch.toLowerCase()}`);
|
|
22
|
+
}
|
|
23
|
+
function domDataAttributes(attrs) {
|
|
24
|
+
const result = {};
|
|
25
|
+
for (const key in attrs) {
|
|
26
|
+
const value = attrs[key];
|
|
27
|
+
if (value === undefined) {
|
|
28
|
+
continue;
|
|
29
|
+
}
|
|
30
|
+
result[`data-${camelToKebab(key)}`] = typeof value === 'boolean' ? String(value) : value;
|
|
31
|
+
}
|
|
32
|
+
return result;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=domDataAttributes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["camelToKebab","str","replaceAll","ch","toLowerCase","domDataAttributes","attrs","result","key","value","undefined","String"],"sourceRoot":"../../../src","sources":["utils/domDataAttributes.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA,SAASA,YAAYA,CAACC,GAAW,EAAU;EACzC,OAAOA,GAAG,CAACC,UAAU,CAAC,QAAQ,EAAGC,EAAE,IAAK,IAAIA,EAAE,CAACC,WAAW,CAAC,CAAC,EAAE,CAAC;AACjE;AAEO,SAASC,iBAAiBA,CAC/BC,KAA4C,EACpB;EACxB,MAAMC,MAA8B,GAAG,CAAC,CAAC;EACzC,KAAK,MAAMC,GAAG,IAAIF,KAAK,EAAE;IACvB,MAAMG,KAAK,GAAGH,KAAK,CAACE,GAAG,CAAC;IACxB,IAAIC,KAAK,KAAKC,SAAS,EAAE;MACvB;IACF;IACAH,MAAM,CAAC,QAAQP,YAAY,CAACQ,GAAG,CAAC,EAAE,CAAC,GAAG,OAAOC,KAAK,KAAK,SAAS,GAAGE,MAAM,CAACF,KAAK,CAAC,GAAGA,KAAK;EAC1F;EACA,OAAOF,MAAM;AACf","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["OverlayInsetsProvider","dataAttributes"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,UAAU;AACxB,cAAc,SAAS;AACvB,cAAc,QAAQ;AACtB,cAAc,SAAS;AACvB,cAAc,aAAa;AAC3B,cAAc,QAAQ;AACtB,cAAc,aAAa;AAC3B,SAA0BA,qBAAqB,QAAQ,WAAW;AAClE,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,SAAS;AAEvB,SAASC,cAAc,QAAQ,wBAAwB","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["OverlayInsetsProvider","dataAttributes","domDataAttributes"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,UAAU;AACxB,cAAc,SAAS;AACvB,cAAc,QAAQ;AACtB,cAAc,SAAS;AACvB,cAAc,aAAa;AAC3B,cAAc,QAAQ;AACtB,cAAc,aAAa;AAC3B,SAA0BA,qBAAqB,QAAQ,WAAW;AAClE,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,SAAS;AAEvB,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,iBAAiB,QAAoC,2BAA2B","ignoreList":[]}
|
|
@@ -15,7 +15,8 @@ export const createSelectIcon = BaseIcon => /*#__PURE__*/forwardRef((props, ref)
|
|
|
15
15
|
const {
|
|
16
16
|
required,
|
|
17
17
|
invalid,
|
|
18
|
-
readOnly
|
|
18
|
+
readOnly,
|
|
19
|
+
open
|
|
19
20
|
} = useSelectContext();
|
|
20
21
|
return /*#__PURE__*/_jsx(BaseIcon, {
|
|
21
22
|
ref: ref,
|
|
@@ -28,6 +29,7 @@ export const createSelectIcon = BaseIcon => /*#__PURE__*/forwardRef((props, ref)
|
|
|
28
29
|
required,
|
|
29
30
|
invalid,
|
|
30
31
|
readonly: readOnly,
|
|
32
|
+
state: open ? 'open' : 'closed',
|
|
31
33
|
slot: 'select-icon'
|
|
32
34
|
}),
|
|
33
35
|
...props
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","dataAttributes","useSelectContext","useSelectTriggerContext","jsx","_jsx","createSelectIcon","BaseIcon","props","ref","hover","focus","active","disabled","focusVisible","required","invalid","readOnly","readonly","slot"],"sourceRoot":"../../../src","sources":["select/createSelectIcon.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,OAAO;AAClC,SAASC,cAAc,QAAQ,yBAAyB;AACxD,SAASC,gBAAgB,EAAEC,uBAAuB,QAAQ,WAAW;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEtE,OAAO,MAAMC,gBAAgB,GAAQC,QAAgC,iBACnEP,UAAU,CAAC,CAACQ,KAAU,EAAEC,GAAS,KAAK;EACpC,MAAM;IAAEC,KAAK;IAAEC,KAAK;IAAEC,MAAM;IAAEC,QAAQ;IAAEC;EAAa,CAAC,GAAGX,uBAAuB,CAAC,CAAC;EAClF,MAAM;IAAEY,QAAQ;IAAEC,OAAO;IAAEC;
|
|
1
|
+
{"version":3,"names":["forwardRef","dataAttributes","useSelectContext","useSelectTriggerContext","jsx","_jsx","createSelectIcon","BaseIcon","props","ref","hover","focus","active","disabled","focusVisible","required","invalid","readOnly","open","readonly","state","slot"],"sourceRoot":"../../../src","sources":["select/createSelectIcon.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,OAAO;AAClC,SAASC,cAAc,QAAQ,yBAAyB;AACxD,SAASC,gBAAgB,EAAEC,uBAAuB,QAAQ,WAAW;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEtE,OAAO,MAAMC,gBAAgB,GAAQC,QAAgC,iBACnEP,UAAU,CAAC,CAACQ,KAAU,EAAEC,GAAS,KAAK;EACpC,MAAM;IAAEC,KAAK;IAAEC,KAAK;IAAEC,MAAM;IAAEC,QAAQ;IAAEC;EAAa,CAAC,GAAGX,uBAAuB,CAAC,CAAC;EAClF,MAAM;IAAEY,QAAQ;IAAEC,OAAO;IAAEC,QAAQ;IAAEC;EAAK,CAAC,GAAGhB,gBAAgB,CAAC,CAAC;EAEhE,oBACEG,IAAA,CAACE,QAAQ;IACPE,GAAG,EAAEA,GAAI;IAAA,GACLR,cAAc,CAAC;MACjBS,KAAK;MACLC,KAAK;MACLC,MAAM;MACNC,QAAQ;MACRC,YAAY;MACZC,QAAQ;MACRC,OAAO;MACPG,QAAQ,EAAEF,QAAQ;MAClBG,KAAK,EAAEF,IAAI,GAAG,MAAM,GAAG,QAAQ;MAC/BG,IAAI,EAAE;IACR,CAAC,CAAC;IAAA,GACGb;EAAK,CACX,CAAC;AAEN,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,28 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
|
-
* Produces
|
|
4
|
+
* Produces `data-*` props for native platforms (consumed by Uniwind).
|
|
5
|
+
* Web (.web.ts): returns a `dataSet` object consumed by React Native Web instead.
|
|
5
6
|
*
|
|
6
|
-
*
|
|
7
|
-
* Web (.web.ts): a `dataSet` object consumed by React Native Web.
|
|
8
|
-
*
|
|
9
|
-
* Boolean values serialize to `"true"` / `"false"` strings.
|
|
10
|
-
* String values pass through as-is.
|
|
11
|
-
* Undefined values are omitted.
|
|
7
|
+
* Delegates to `domDataAttributes` so the conversion logic has a single source of truth.
|
|
12
8
|
*/
|
|
13
|
-
|
|
14
|
-
function camelToKebab(str) {
|
|
15
|
-
return str.replaceAll(/[A-Z]/g, ch => `-${ch.toLowerCase()}`);
|
|
16
|
-
}
|
|
17
|
-
export function dataAttributes(attrs) {
|
|
18
|
-
const result = {};
|
|
19
|
-
for (const key in attrs) {
|
|
20
|
-
const value = attrs[key];
|
|
21
|
-
if (value === undefined) {
|
|
22
|
-
continue;
|
|
23
|
-
}
|
|
24
|
-
result[`data-${camelToKebab(key)}`] = typeof value === 'boolean' ? String(value) : value;
|
|
25
|
-
}
|
|
26
|
-
return result;
|
|
27
|
-
}
|
|
9
|
+
export { domDataAttributes as dataAttributes } from './domDataAttributes';
|
|
28
10
|
//# sourceMappingURL=dataAttributes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["domDataAttributes","dataAttributes"],"sourceRoot":"../../../src","sources":["utils/dataAttributes.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,iBAAiB,IAAIC,cAAc,QAAQ,qBAAqB","ignoreList":[]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Produces `data-*` DOM attribute props for use on raw HTML elements (e.g. `<button>`).
|
|
5
|
+
*
|
|
6
|
+
* Unlike `dataAttributes`, which has a platform-specific `.web.ts` sibling that returns a
|
|
7
|
+
* `dataSet` object for React Native Web components, this file has no platform variant.
|
|
8
|
+
* The bundler therefore always resolves to this single implementation, making it safe to
|
|
9
|
+
* import from `.web.tsx` host components that render native DOM elements directly.
|
|
10
|
+
*
|
|
11
|
+
* Boolean values serialize to `"true"` / `"false"` strings.
|
|
12
|
+
* String values pass through as-is.
|
|
13
|
+
* Undefined values are omitted.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
function camelToKebab(str) {
|
|
17
|
+
return str.replaceAll(/[A-Z]/g, ch => `-${ch.toLowerCase()}`);
|
|
18
|
+
}
|
|
19
|
+
export function domDataAttributes(attrs) {
|
|
20
|
+
const result = {};
|
|
21
|
+
for (const key in attrs) {
|
|
22
|
+
const value = attrs[key];
|
|
23
|
+
if (value === undefined) {
|
|
24
|
+
continue;
|
|
25
|
+
}
|
|
26
|
+
result[`data-${camelToKebab(key)}`] = typeof value === 'boolean' ? String(value) : value;
|
|
27
|
+
}
|
|
28
|
+
return result;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=domDataAttributes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["camelToKebab","str","replaceAll","ch","toLowerCase","domDataAttributes","attrs","result","key","value","undefined","String"],"sourceRoot":"../../../src","sources":["utils/domDataAttributes.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA,SAASA,YAAYA,CAACC,GAAW,EAAU;EACzC,OAAOA,GAAG,CAACC,UAAU,CAAC,QAAQ,EAAGC,EAAE,IAAK,IAAIA,EAAE,CAACC,WAAW,CAAC,CAAC,EAAE,CAAC;AACjE;AAEA,OAAO,SAASC,iBAAiBA,CAC/BC,KAA4C,EACpB;EACxB,MAAMC,MAA8B,GAAG,CAAC,CAAC;EACzC,KAAK,MAAMC,GAAG,IAAIF,KAAK,EAAE;IACvB,MAAMG,KAAK,GAAGH,KAAK,CAACE,GAAG,CAAC;IACxB,IAAIC,KAAK,KAAKC,SAAS,EAAE;MACvB;IACF;IACAH,MAAM,CAAC,QAAQP,YAAY,CAACQ,GAAG,CAAC,EAAE,CAAC,GAAG,OAAOC,KAAK,KAAK,SAAS,GAAGE,MAAM,CAACF,KAAK,CAAC,GAAGA,KAAK;EAC1F;EACA,OAAOF,MAAM;AACf","ignoreList":[]}
|
|
@@ -17,4 +17,5 @@ export * from './progress';
|
|
|
17
17
|
export * from './radio';
|
|
18
18
|
export type { InteractionState } from './types';
|
|
19
19
|
export { dataAttributes } from './utils/dataAttributes';
|
|
20
|
+
export { domDataAttributes, type DomDataAttributeValue } from './utils/domDataAttributes';
|
|
20
21
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,KAAK,UAAU,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACnE,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,YAAY,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,KAAK,UAAU,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACnE,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,YAAY,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,KAAK,qBAAqB,EAAE,MAAM,2BAA2B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSelectIcon.d.ts","sourceRoot":"","sources":["../../../src/select/createSelectIcon.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,gBAAgB,GAAI,CAAC,EAAG,UAAU,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"createSelectIcon.d.ts","sourceRoot":"","sources":["../../../src/select/createSelectIcon.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,gBAAgB,GAAI,CAAC,EAAG,UAAU,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,yGAuBjE,CAAC"}
|
|
@@ -1,14 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Produces
|
|
2
|
+
* Produces `data-*` props for native platforms (consumed by Uniwind).
|
|
3
|
+
* Web (.web.ts): returns a `dataSet` object consumed by React Native Web instead.
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
-
* Web (.web.ts): a `dataSet` object consumed by React Native Web.
|
|
6
|
-
*
|
|
7
|
-
* Boolean values serialize to `"true"` / `"false"` strings.
|
|
8
|
-
* String values pass through as-is.
|
|
9
|
-
* Undefined values are omitted.
|
|
5
|
+
* Delegates to `domDataAttributes` so the conversion logic has a single source of truth.
|
|
10
6
|
*/
|
|
11
|
-
|
|
12
|
-
export declare function dataAttributes(attrs: Record<string, DataAttributeValue>): Record<string, string>;
|
|
13
|
-
export {};
|
|
7
|
+
export { domDataAttributes as dataAttributes } from './domDataAttributes';
|
|
14
8
|
//# sourceMappingURL=dataAttributes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataAttributes.d.ts","sourceRoot":"","sources":["../../../src/utils/dataAttributes.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"dataAttributes.d.ts","sourceRoot":"","sources":["../../../src/utils/dataAttributes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,iBAAiB,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Produces `data-*` DOM attribute props for use on raw HTML elements (e.g. `<button>`).
|
|
3
|
+
*
|
|
4
|
+
* Unlike `dataAttributes`, which has a platform-specific `.web.ts` sibling that returns a
|
|
5
|
+
* `dataSet` object for React Native Web components, this file has no platform variant.
|
|
6
|
+
* The bundler therefore always resolves to this single implementation, making it safe to
|
|
7
|
+
* import from `.web.tsx` host components that render native DOM elements directly.
|
|
8
|
+
*
|
|
9
|
+
* Boolean values serialize to `"true"` / `"false"` strings.
|
|
10
|
+
* String values pass through as-is.
|
|
11
|
+
* Undefined values are omitted.
|
|
12
|
+
*/
|
|
13
|
+
export type DomDataAttributeValue = boolean | string | undefined;
|
|
14
|
+
export declare function domDataAttributes(attrs: Record<string, DomDataAttributeValue>): Record<string, string>;
|
|
15
|
+
//# sourceMappingURL=domDataAttributes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"domDataAttributes.d.ts","sourceRoot":"","sources":["../../../src/utils/domDataAttributes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;AAMjE,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAC3C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAUxB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cdx-ui/primitives",
|
|
3
|
-
"version": "0.0.1-beta.
|
|
3
|
+
"version": "0.0.1-beta.47",
|
|
4
4
|
"main": "lib/commonjs/index.js",
|
|
5
5
|
"module": "lib/module/index.js",
|
|
6
6
|
"react-native": "src/index.ts",
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
"@react-stately/checkbox": "3.7.4",
|
|
61
61
|
"@react-stately/radio": "3.12.0",
|
|
62
62
|
"@react-stately/toggle": "3.9.4",
|
|
63
|
-
"@cdx-ui/utils": "0.0.1-beta.
|
|
63
|
+
"@cdx-ui/utils": "0.0.1-beta.47"
|
|
64
64
|
},
|
|
65
65
|
"devDependencies": {
|
|
66
66
|
"@types/react": "*",
|
package/src/index.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { useSelectContext, useSelectTriggerContext } from './context';
|
|
|
5
5
|
export const createSelectIcon = <T,>(BaseIcon: React.ComponentType<T>) =>
|
|
6
6
|
forwardRef((props: any, ref?: any) => {
|
|
7
7
|
const { hover, focus, active, disabled, focusVisible } = useSelectTriggerContext();
|
|
8
|
-
const { required, invalid, readOnly } = useSelectContext();
|
|
8
|
+
const { required, invalid, readOnly, open } = useSelectContext();
|
|
9
9
|
|
|
10
10
|
return (
|
|
11
11
|
<BaseIcon
|
|
@@ -19,6 +19,7 @@ export const createSelectIcon = <T,>(BaseIcon: React.ComponentType<T>) =>
|
|
|
19
19
|
required,
|
|
20
20
|
invalid,
|
|
21
21
|
readonly: readOnly,
|
|
22
|
+
state: open ? 'open' : 'closed',
|
|
22
23
|
slot: 'select-icon',
|
|
23
24
|
})}
|
|
24
25
|
{...(props as T)}
|
|
@@ -1,28 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Produces
|
|
2
|
+
* Produces `data-*` props for native platforms (consumed by Uniwind).
|
|
3
|
+
* Web (.web.ts): returns a `dataSet` object consumed by React Native Web instead.
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
-
* Web (.web.ts): a `dataSet` object consumed by React Native Web.
|
|
6
|
-
*
|
|
7
|
-
* Boolean values serialize to `"true"` / `"false"` strings.
|
|
8
|
-
* String values pass through as-is.
|
|
9
|
-
* Undefined values are omitted.
|
|
5
|
+
* Delegates to `domDataAttributes` so the conversion logic has a single source of truth.
|
|
10
6
|
*/
|
|
11
|
-
|
|
12
|
-
type DataAttributeValue = boolean | string | undefined;
|
|
13
|
-
|
|
14
|
-
function camelToKebab(str: string): string {
|
|
15
|
-
return str.replaceAll(/[A-Z]/g, (ch) => `-${ch.toLowerCase()}`);
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export function dataAttributes(attrs: Record<string, DataAttributeValue>): Record<string, string> {
|
|
19
|
-
const result: Record<string, string> = {};
|
|
20
|
-
for (const key in attrs) {
|
|
21
|
-
const value = attrs[key];
|
|
22
|
-
if (value === undefined) {
|
|
23
|
-
continue;
|
|
24
|
-
}
|
|
25
|
-
result[`data-${camelToKebab(key)}`] = typeof value === 'boolean' ? String(value) : value;
|
|
26
|
-
}
|
|
27
|
-
return result;
|
|
28
|
-
}
|
|
7
|
+
export { domDataAttributes as dataAttributes } from './domDataAttributes';
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Produces `data-*` DOM attribute props for use on raw HTML elements (e.g. `<button>`).
|
|
3
|
+
*
|
|
4
|
+
* Unlike `dataAttributes`, which has a platform-specific `.web.ts` sibling that returns a
|
|
5
|
+
* `dataSet` object for React Native Web components, this file has no platform variant.
|
|
6
|
+
* The bundler therefore always resolves to this single implementation, making it safe to
|
|
7
|
+
* import from `.web.tsx` host components that render native DOM elements directly.
|
|
8
|
+
*
|
|
9
|
+
* Boolean values serialize to `"true"` / `"false"` strings.
|
|
10
|
+
* String values pass through as-is.
|
|
11
|
+
* Undefined values are omitted.
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
export type DomDataAttributeValue = boolean | string | undefined;
|
|
15
|
+
|
|
16
|
+
function camelToKebab(str: string): string {
|
|
17
|
+
return str.replaceAll(/[A-Z]/g, (ch) => `-${ch.toLowerCase()}`);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export function domDataAttributes(
|
|
21
|
+
attrs: Record<string, DomDataAttributeValue>,
|
|
22
|
+
): Record<string, string> {
|
|
23
|
+
const result: Record<string, string> = {};
|
|
24
|
+
for (const key in attrs) {
|
|
25
|
+
const value = attrs[key];
|
|
26
|
+
if (value === undefined) {
|
|
27
|
+
continue;
|
|
28
|
+
}
|
|
29
|
+
result[`data-${camelToKebab(key)}`] = typeof value === 'boolean' ? String(value) : value;
|
|
30
|
+
}
|
|
31
|
+
return result;
|
|
32
|
+
}
|