@hjmds/react 0.8.2 → 0.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +1 -1
- package/dist/evidence.d.ts +46 -1
- package/dist/evidence.d.ts.map +1 -1
- package/dist/evidence.js +20 -2
- package/dist/evidence.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/layout.d.ts +30 -0
- package/dist/layout.d.ts.map +1 -1
- package/dist/layout.js +23 -0
- package/dist/layout.js.map +1 -1
- package/dist/overlays.d.ts.map +1 -1
- package/dist/overlays.js +24 -1
- package/dist/overlays.js.map +1 -1
- package/dist/styles.css +40 -6
- package/dist/upload-item.d.ts.map +1 -1
- package/dist/upload-item.js +7 -3
- package/dist/upload-item.js.map +1 -1
- package/package.json +6 -4
package/dist/upload-item.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { getUploadItemAvailableAction, resolveUploadItemAnnouncement, } from "@hjmds/design-contracts/components/upload-item";
|
|
3
3
|
import { forwardRef } from "react";
|
|
4
4
|
import { Progress } from "./feedback.js";
|
|
@@ -13,7 +13,11 @@ export const UploadItem = forwardRef(function UploadItem({ descriptor, labels, o
|
|
|
13
13
|
if (action === "retry" && onRetry === undefined) {
|
|
14
14
|
throw new TypeError("UploadItem requires onRetry while status is error");
|
|
15
15
|
}
|
|
16
|
-
const
|
|
17
|
-
|
|
16
|
+
const isUploading = descriptor.state.status === "uploading";
|
|
17
|
+
const progress = isUploading ? descriptor.state.progress : undefined;
|
|
18
|
+
const progressValueText = isUploading && announcement.description !== labels.uploading
|
|
19
|
+
? announcement.description
|
|
20
|
+
: undefined;
|
|
21
|
+
return (_jsxs("div", { ...props, ref: ref, "aria-label": announcement.label, className: classNames("hjm-upload-item", className), "data-status": descriptor.state.status, role: "group", children: [leading === undefined ? null : _jsx("span", { "aria-hidden": "true", className: "hjm-upload-item__leading", children: leading }), _jsxs("div", { className: "hjm-upload-item__body", children: [_jsx("span", { className: "hjm-upload-item__name", children: descriptor.name }), descriptor.sizeLabel === undefined ? null : _jsx("span", { className: "hjm-upload-item__meta", children: descriptor.sizeLabel }), isUploading ? (_jsxs(_Fragment, { children: [_jsx("span", { "aria-atomic": "true", "aria-live": "polite", className: "hjm-upload-item__status hjm-visually-hidden", children: labels.uploading }), _jsx(Progress, { "aria-label": labels.uploading, label: labels.uploading, ...(progress === null || progress === undefined ? {} : { value: progress * 100 }), ...(progressValueText === undefined ? {} : { valueText: progressValueText }) })] })) : (_jsx("span", { className: "hjm-upload-item__status", "aria-live": "polite", children: announcement.description }))] }), action === "cancel" ? (_jsx("button", { className: "hjm-upload-item__action", "data-action": "cancel", onClick: () => onCancel?.(descriptor.id), type: "button", children: labels.cancel })) : action === "retry" ? (_jsx("button", { className: "hjm-upload-item__action", "data-action": "retry", onClick: () => onRetry?.(descriptor.id), type: "button", children: labels.retry })) : null] }));
|
|
18
22
|
});
|
|
19
23
|
//# sourceMappingURL=upload-item.js.map
|
package/dist/upload-item.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-item.js","sourceRoot":"","sources":["../src/upload-item.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,GAG9B,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAE,UAAU,EAAuC,MAAM,OAAO,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAU3C,6EAA6E;AAC7E,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAkC,SAAS,UAAU,CACvF,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EACvE,GAAG;IAEH,MAAM,YAAY,GAAG,6BAA6B,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACvE,MAAM,MAAM,GAAG,4BAA4B,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC9D,IAAI,MAAM,KAAK,QAAQ,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAClD,MAAM,IAAI,SAAS,CAAC,wDAAwD,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,MAAM,KAAK,OAAO,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAChD,MAAM,IAAI,SAAS,CAAC,mDAAmD,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,
|
|
1
|
+
{"version":3,"file":"upload-item.js","sourceRoot":"","sources":["../src/upload-item.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,GAG9B,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAE,UAAU,EAAuC,MAAM,OAAO,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAU3C,6EAA6E;AAC7E,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAkC,SAAS,UAAU,CACvF,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EACvE,GAAG;IAEH,MAAM,YAAY,GAAG,6BAA6B,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACvE,MAAM,MAAM,GAAG,4BAA4B,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC9D,IAAI,MAAM,KAAK,QAAQ,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAClD,MAAM,IAAI,SAAS,CAAC,wDAAwD,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,MAAM,KAAK,OAAO,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAChD,MAAM,IAAI,SAAS,CAAC,mDAAmD,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,KAAK,WAAW,CAAC;IAC5D,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACrE,MAAM,iBAAiB,GACrB,WAAW,IAAI,YAAY,CAAC,WAAW,KAAK,MAAM,CAAC,SAAS;QAC1D,CAAC,CAAC,YAAY,CAAC,WAAW;QAC1B,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO,CACL,kBACM,KAAK,EACT,GAAG,EAAE,GAAG,gBACI,YAAY,CAAC,KAAK,EAC9B,SAAS,EAAE,UAAU,CAAC,iBAAiB,EAAE,SAAS,CAAC,iBACtC,UAAU,CAAC,KAAK,CAAC,MAAM,EACpC,IAAI,EAAC,OAAO,aAEX,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,8BAAkB,MAAM,EAAC,SAAS,EAAC,0BAA0B,YAAE,OAAO,GAAQ,EAC9G,eAAK,SAAS,EAAC,uBAAuB,aACpC,eAAM,SAAS,EAAC,uBAAuB,YAAE,UAAU,CAAC,IAAI,GAAQ,EAC/D,UAAU,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAM,SAAS,EAAC,uBAAuB,YAAE,UAAU,CAAC,SAAS,GAAQ,EACjH,WAAW,CAAC,CAAC,CAAC,CACb,8BACE,8BACc,MAAM,eACR,QAAQ,EAClB,SAAS,EAAC,6CAA6C,YAEtD,MAAM,CAAC,SAAS,GACZ,EACP,KAAC,QAAQ,kBACK,MAAM,CAAC,SAAS,EAC5B,KAAK,EAAE,MAAM,CAAC,SAAS,KACnB,CAAC,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,GAAG,GAAG,EAAE,CAAC,KAC9E,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,GAC7E,IACD,CACJ,CAAC,CAAC,CAAC,CACF,eAAM,SAAS,EAAC,yBAAyB,eAAW,QAAQ,YAAE,YAAY,CAAC,WAAW,GAAQ,CAC/F,IACG,EACL,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CACrB,iBAAQ,SAAS,EAAC,yBAAyB,iBAAa,QAAQ,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,IAAI,EAAC,QAAQ,YAAE,MAAM,CAAC,MAAM,GAAU,CAClJ,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CACvB,iBAAQ,SAAS,EAAC,yBAAyB,iBAAa,OAAO,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,IAAI,EAAC,QAAQ,YAAE,MAAM,CAAC,KAAK,GAAU,CAC/I,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;AACJ,CAAC,CAAC,CAAC","sourcesContent":["import {\n getUploadItemAvailableAction,\n resolveUploadItemAnnouncement,\n type UploadItemDescriptor,\n type UploadItemLabels,\n} from \"@hjmds/design-contracts/components/upload-item\";\nimport { forwardRef, type HTMLAttributes, type ReactNode } from \"react\";\n\nimport { Progress } from \"./feedback.js\";\nimport { classNames } from \"./internal.js\";\n\nexport type UploadItemProps = Omit<HTMLAttributes<HTMLDivElement>, \"children\"> & Readonly<{\n descriptor: UploadItemDescriptor;\n labels: UploadItemLabels;\n onCancel?: (id: string) => void;\n onRetry?: (id: string) => void;\n leading?: ReactNode;\n}>;\n\n/** One upload row whose available action is derived entirely from status. */\nexport const UploadItem = forwardRef<HTMLDivElement, UploadItemProps>(function UploadItem(\n { descriptor, labels, onCancel, onRetry, leading, className, ...props },\n ref,\n) {\n const announcement = resolveUploadItemAnnouncement(descriptor, labels);\n const action = getUploadItemAvailableAction(descriptor.state);\n if (action === \"cancel\" && onCancel === undefined) {\n throw new TypeError(\"UploadItem requires onCancel while status is uploading\");\n }\n if (action === \"retry\" && onRetry === undefined) {\n throw new TypeError(\"UploadItem requires onRetry while status is error\");\n }\n const isUploading = descriptor.state.status === \"uploading\";\n const progress = isUploading ? descriptor.state.progress : undefined;\n const progressValueText =\n isUploading && announcement.description !== labels.uploading\n ? announcement.description\n : undefined;\n return (\n <div\n {...props}\n ref={ref}\n aria-label={announcement.label}\n className={classNames(\"hjm-upload-item\", className)}\n data-status={descriptor.state.status}\n role=\"group\"\n >\n {leading === undefined ? null : <span aria-hidden=\"true\" className=\"hjm-upload-item__leading\">{leading}</span>}\n <div className=\"hjm-upload-item__body\">\n <span className=\"hjm-upload-item__name\">{descriptor.name}</span>\n {descriptor.sizeLabel === undefined ? null : <span className=\"hjm-upload-item__meta\">{descriptor.sizeLabel}</span>}\n {isUploading ? (\n <>\n <span\n aria-atomic=\"true\"\n aria-live=\"polite\"\n className=\"hjm-upload-item__status hjm-visually-hidden\"\n >\n {labels.uploading}\n </span>\n <Progress\n aria-label={labels.uploading}\n label={labels.uploading}\n {...(progress === null || progress === undefined ? {} : { value: progress * 100 })}\n {...(progressValueText === undefined ? {} : { valueText: progressValueText })}\n />\n </>\n ) : (\n <span className=\"hjm-upload-item__status\" aria-live=\"polite\">{announcement.description}</span>\n )}\n </div>\n {action === \"cancel\" ? (\n <button className=\"hjm-upload-item__action\" data-action=\"cancel\" onClick={() => onCancel?.(descriptor.id)} type=\"button\">{labels.cancel}</button>\n ) : action === \"retry\" ? (\n <button className=\"hjm-upload-item__action\" data-action=\"retry\" onClick={() => onRetry?.(descriptor.id)} type=\"button\">{labels.retry}</button>\n ) : null}\n </div>\n );\n});\n"]}
|
package/package.json
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hjmds/react",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.1",
|
|
4
4
|
"description": "Accessible React 19 renderers for HJM design contracts.",
|
|
5
|
+
"license": "MIT",
|
|
5
6
|
"publishConfig": {
|
|
6
7
|
"access": "public"
|
|
7
8
|
},
|
|
@@ -121,10 +122,11 @@
|
|
|
121
122
|
},
|
|
122
123
|
"files": [
|
|
123
124
|
"dist",
|
|
124
|
-
"README.md"
|
|
125
|
+
"README.md",
|
|
126
|
+
"LICENSE"
|
|
125
127
|
],
|
|
126
128
|
"peerDependencies": {
|
|
127
|
-
"@hjmds/design-contracts": ">=0.
|
|
129
|
+
"@hjmds/design-contracts": ">=0.9.0 <0.10.0",
|
|
128
130
|
"react": ">=19.0.0",
|
|
129
131
|
"react-dom": ">=19.0.0"
|
|
130
132
|
},
|
|
@@ -138,7 +140,7 @@
|
|
|
138
140
|
"react-dom": "19.2.3",
|
|
139
141
|
"typescript": "^5.9.3",
|
|
140
142
|
"vitest": "^4.1.10",
|
|
141
|
-
"@hjmds/design-contracts": "0.
|
|
143
|
+
"@hjmds/design-contracts": "0.9.1"
|
|
142
144
|
},
|
|
143
145
|
"scripts": {
|
|
144
146
|
"build": "tsc -p tsconfig.build.json && cp src/styles.css dist/styles.css",
|