@payloadcms/ui 3.0.0-canary.23fcb9e → 3.0.0-canary.294ea5c

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 (140) hide show
  1. package/dist/elements/AddNewRelation/index.d.ts.map +1 -0
  2. package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/index.js +98 -82
  3. package/dist/elements/AddNewRelation/index.js.map +1 -0
  4. package/dist/elements/AddNewRelation/index.scss +42 -0
  5. package/dist/elements/AddNewRelation/types.d.ts +11 -0
  6. package/dist/elements/AddNewRelation/types.d.ts.map +1 -0
  7. package/dist/elements/AddNewRelation/types.js.map +1 -0
  8. package/dist/elements/AddNewRelation/useRelatedCollections.d.ts.map +1 -0
  9. package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/useRelatedCollections.js +1 -1
  10. package/dist/elements/AddNewRelation/useRelatedCollections.js.map +1 -0
  11. package/dist/elements/AppHeader/index.js +41 -80
  12. package/dist/elements/AppHeader/index.js.map +1 -1
  13. package/dist/elements/Autosave/index.js +148 -231
  14. package/dist/elements/Autosave/index.js.map +1 -1
  15. package/dist/elements/Button/index.js +86 -218
  16. package/dist/elements/Button/index.js.map +1 -1
  17. package/dist/elements/Collapsible/index.js +44 -62
  18. package/dist/elements/Collapsible/index.js.map +1 -1
  19. package/dist/elements/Collapsible/index.scss +15 -28
  20. package/dist/elements/CopyToClipboard/index.js +20 -54
  21. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  22. package/dist/elements/DocumentDrawer/DrawerContent.js +1 -1
  23. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  24. package/dist/elements/DocumentDrawer/index.js +1 -1
  25. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  26. package/dist/elements/Dropzone/index.js +59 -119
  27. package/dist/elements/Dropzone/index.js.map +1 -1
  28. package/dist/elements/EditMany/index.js +124 -230
  29. package/dist/elements/EditMany/index.js.map +1 -1
  30. package/dist/elements/EditUpload/index.js +133 -206
  31. package/dist/elements/EditUpload/index.js.map +1 -1
  32. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +20 -0
  33. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -0
  34. package/dist/elements/FileDetails/DraggableFileDetails/index.js +116 -0
  35. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -0
  36. package/dist/elements/FileDetails/DraggableFileDetails/index.scss +33 -0
  37. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts +17 -0
  38. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -0
  39. package/dist/elements/FileDetails/StaticFileDetails/index.js +71 -0
  40. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -0
  41. package/dist/elements/FileDetails/{index.scss → StaticFileDetails/index.scss} +1 -1
  42. package/dist/elements/FileDetails/index.d.ts +19 -4
  43. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  44. package/dist/elements/FileDetails/index.js +11 -62
  45. package/dist/elements/FileDetails/index.js.map +1 -1
  46. package/dist/elements/ListControls/index.d.ts.map +1 -1
  47. package/dist/elements/ListControls/index.js +91 -192
  48. package/dist/elements/ListControls/index.js.map +1 -1
  49. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  50. package/dist/elements/ListDrawer/DrawerContent.js +42 -31
  51. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  52. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  53. package/dist/elements/ListDrawer/index.js.map +1 -1
  54. package/dist/elements/ListDrawer/types.d.ts +4 -1
  55. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  56. package/dist/elements/ListDrawer/types.js.map +1 -1
  57. package/dist/elements/Nav/context.js +47 -83
  58. package/dist/elements/Nav/context.js.map +1 -1
  59. package/dist/elements/SaveButton/index.js +30 -81
  60. package/dist/elements/SaveButton/index.js.map +1 -1
  61. package/dist/elements/SaveDraftButton/index.js +54 -116
  62. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  63. package/dist/elements/SearchFilter/index.js +21 -77
  64. package/dist/elements/SearchFilter/index.js.map +1 -1
  65. package/dist/elements/SelectMany/index.d.ts +6 -0
  66. package/dist/elements/SelectMany/index.d.ts.map +1 -0
  67. package/dist/elements/SelectMany/index.js +29 -0
  68. package/dist/elements/SelectMany/index.js.map +1 -0
  69. package/dist/elements/Upload/index.js +130 -280
  70. package/dist/elements/Upload/index.js.map +1 -1
  71. package/dist/exports/client/{CodeEditor-C4FLUUO7.js → CodeEditor-MTP455NO.js} +2 -2
  72. package/dist/exports/client/chunk-NJHSEGFB.js +14 -0
  73. package/dist/exports/client/{chunk-UGBVRIVY.js.map → chunk-NJHSEGFB.js.map} +2 -2
  74. package/dist/exports/client/index.d.ts +1 -1
  75. package/dist/exports/client/index.d.ts.map +1 -1
  76. package/dist/exports/client/index.js +13 -13
  77. package/dist/exports/client/index.js.map +4 -4
  78. package/dist/fields/Relationship/index.d.ts.map +1 -1
  79. package/dist/fields/Relationship/index.js +319 -507
  80. package/dist/fields/Relationship/index.js.map +1 -1
  81. package/dist/fields/Upload/HasMany/index.d.ts +4 -0
  82. package/dist/fields/Upload/HasMany/index.d.ts.map +1 -0
  83. package/dist/fields/Upload/HasMany/index.js +238 -0
  84. package/dist/fields/Upload/HasMany/index.js.map +1 -0
  85. package/dist/fields/Upload/HasMany/index.scss +71 -0
  86. package/dist/fields/Upload/{Input.d.ts → HasOne/Input.d.ts} +1 -1
  87. package/dist/fields/Upload/HasOne/Input.d.ts.map +1 -0
  88. package/dist/fields/Upload/{Input.js → HasOne/Input.js} +12 -12
  89. package/dist/fields/Upload/HasOne/Input.js.map +1 -0
  90. package/dist/fields/Upload/HasOne/index.d.ts +12 -0
  91. package/dist/fields/Upload/HasOne/index.d.ts.map +1 -0
  92. package/dist/fields/Upload/HasOne/index.js +131 -0
  93. package/dist/fields/Upload/HasOne/index.js.map +1 -0
  94. package/dist/fields/Upload/{index.scss → HasOne/index.scss} +1 -1
  95. package/dist/fields/Upload/index.d.ts +4 -4
  96. package/dist/fields/Upload/index.d.ts.map +1 -1
  97. package/dist/fields/Upload/index.js +84 -98
  98. package/dist/fields/Upload/index.js.map +1 -1
  99. package/dist/forms/Submit/index.js +12 -28
  100. package/dist/forms/Submit/index.js.map +1 -1
  101. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  102. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +1 -27
  103. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  104. package/dist/hooks/useDelay.js +15 -48
  105. package/dist/hooks/useDelay.js.map +1 -1
  106. package/dist/hooks/useDelayedRender.js +32 -71
  107. package/dist/hooks/useDelayedRender.js.map +1 -1
  108. package/dist/hooks/useIntersect.js +14 -20
  109. package/dist/hooks/useIntersect.js.map +1 -1
  110. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -1
  111. package/dist/providers/Config/createClientConfig/collections.js +8 -6
  112. package/dist/providers/Config/createClientConfig/collections.js.map +1 -1
  113. package/dist/providers/ListInfo/index.d.ts +6 -0
  114. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  115. package/dist/providers/ListInfo/index.js.map +1 -1
  116. package/dist/providers/Preferences/index.js +1 -3
  117. package/dist/providers/Preferences/index.js.map +1 -1
  118. package/dist/providers/Selection/index.d.ts +5 -3
  119. package/dist/providers/Selection/index.d.ts.map +1 -1
  120. package/dist/providers/Selection/index.js +102 -190
  121. package/dist/providers/Selection/index.js.map +1 -1
  122. package/dist/scss/app.scss +6 -6
  123. package/dist/scss/type.scss +4 -4
  124. package/dist/styles.css +1 -1
  125. package/package.json +8 -8
  126. package/dist/exports/client/chunk-UGBVRIVY.js +0 -14
  127. package/dist/fields/Relationship/AddNew/index.d.ts.map +0 -1
  128. package/dist/fields/Relationship/AddNew/index.js.map +0 -1
  129. package/dist/fields/Relationship/AddNew/index.scss +0 -28
  130. package/dist/fields/Relationship/AddNew/types.d.ts +0 -12
  131. package/dist/fields/Relationship/AddNew/types.d.ts.map +0 -1
  132. package/dist/fields/Relationship/AddNew/types.js.map +0 -1
  133. package/dist/fields/Relationship/AddNew/useRelatedCollections.d.ts.map +0 -1
  134. package/dist/fields/Relationship/AddNew/useRelatedCollections.js.map +0 -1
  135. package/dist/fields/Upload/Input.d.ts.map +0 -1
  136. package/dist/fields/Upload/Input.js.map +0 -1
  137. /package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/index.d.ts +0 -0
  138. /package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/types.js +0 -0
  139. /package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/useRelatedCollections.d.ts +0 -0
  140. /package/dist/exports/client/{CodeEditor-C4FLUUO7.js.map → CodeEditor-MTP455NO.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.js","names":["c","_c","getTranslation","React","useCallback","useEffect","useState","Button","useDocumentDrawer","FileDetails","useListDrawer","useTranslation","FieldDescription","FieldError","FieldLabel","fieldBaseClass","baseClass","UploadInputHasOne","props","$","Description","Error","Label","allowNewUpload","api","t0","className","collection","customUploadActions","descriptionProps","errorProps","field","filterOptions","label","labelProps","onChange","readOnly","relationTo","required","serverURL","showError","style","value","width","undefined","i18n","t","fileDoc","setFileDoc","missingFile","setMissingFile","t1","slug","t2","collectionSlugs","t3","t4","collectionSlug","DocumentDrawer","DocumentDrawerToggler","t5","closeDrawer","t6","ListDrawer","ListDrawerToggler","t7","closeListDrawer","t8","language","fetchFile","response","fetch","credentials","headers","ok","json","t9","t10","args","doc","onSave","t11","args_0","id","docID","onSelect","upload","t12","t13","t14","filter","Boolean","t15","join","t16","t17","t18","t19","_jsxs","Fragment","children","_jsx","handleRemove","uploadConfig","disabled","buttonStyle","el","labels","singular","CustomError"],"sources":["../../../../src/fields/Upload/HasOne/Input.tsx"],"sourcesContent":["'use client'\n\nimport type {\n ClientCollectionConfig,\n FieldDescriptionClientProps,\n FieldErrorClientProps,\n FieldLabelClientProps,\n FilterOptionsResult,\n MappedComponent,\n StaticDescription,\n StaticLabel,\n UploadField,\n UploadFieldClient,\n} from 'payload'\nimport type { MarkOptional } from 'ts-essentials'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type { DocumentDrawerProps } from '../../../elements/DocumentDrawer/types.js'\nimport type { ListDrawerProps } from '../../../elements/ListDrawer/types.js'\n\nimport { Button } from '../../../elements/Button/index.js'\nimport { useDocumentDrawer } from '../../../elements/DocumentDrawer/index.js'\nimport { FileDetails } from '../../../elements/FileDetails/index.js'\nimport { useListDrawer } from '../../../elements/ListDrawer/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { FieldDescription } from '../../FieldDescription/index.js'\nimport { FieldError } from '../../FieldError/index.js'\nimport { FieldLabel } from '../../FieldLabel/index.js'\nimport { fieldBaseClass } from '../../shared/index.js'\nimport { baseClass } from '../index.js'\nimport './index.scss'\n\nexport type UploadInputProps = {\n readonly Description?: MappedComponent\n readonly Error?: MappedComponent\n readonly Label?: MappedComponent\n /**\n * Controls the visibility of the \"Create new collection\" button\n */\n readonly allowNewUpload?: boolean\n readonly api?: string\n readonly className?: string\n readonly collection?: ClientCollectionConfig\n readonly customUploadActions?: React.ReactNode[]\n readonly description?: StaticDescription\n readonly descriptionProps?: FieldDescriptionClientProps<MarkOptional<UploadFieldClient, 'type'>>\n readonly errorProps?: FieldErrorClientProps<MarkOptional<UploadFieldClient, 'type'>>\n readonly field?: MarkOptional<UploadFieldClient, 'type'>\n readonly filterOptions?: FilterOptionsResult\n readonly label: StaticLabel\n readonly labelProps?: FieldLabelClientProps<MarkOptional<UploadFieldClient, 'type'>>\n readonly onChange?: (e) => void\n readonly readOnly?: boolean\n readonly relationTo?: UploadField['relationTo']\n readonly required?: boolean\n readonly serverURL?: string\n readonly showError?: boolean\n readonly style?: React.CSSProperties\n readonly value?: string\n readonly width?: string\n}\n\nexport const UploadInputHasOne: React.FC<UploadInputProps> = (props) => {\n const {\n Description,\n Error,\n Label,\n allowNewUpload,\n api = '/api',\n className,\n collection,\n customUploadActions,\n descriptionProps,\n errorProps,\n field,\n filterOptions,\n label,\n labelProps,\n onChange,\n readOnly,\n relationTo,\n required,\n serverURL,\n showError,\n style,\n value,\n width,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const [fileDoc, setFileDoc] = useState(undefined)\n const [missingFile, setMissingFile] = useState(false)\n const [collectionSlugs] = useState([collection?.slug])\n\n const [DocumentDrawer, DocumentDrawerToggler, { closeDrawer }] = useDocumentDrawer({\n collectionSlug: collectionSlugs[0],\n })\n\n const [ListDrawer, ListDrawerToggler, { closeDrawer: closeListDrawer }] = useListDrawer({\n collectionSlugs,\n filterOptions,\n })\n\n useEffect(() => {\n if (value !== null && typeof value !== 'undefined' && value !== '') {\n const fetchFile = async () => {\n const response = await fetch(`${serverURL}${api}/${relationTo}/${value}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n if (response.ok) {\n const json = await response.json()\n setFileDoc(json)\n } else {\n setMissingFile(true)\n setFileDoc(undefined)\n }\n }\n\n void fetchFile()\n } else {\n setFileDoc(undefined)\n }\n }, [value, relationTo, api, serverURL, i18n])\n\n const onSave = useCallback<DocumentDrawerProps['onSave']>(\n (args) => {\n setMissingFile(false)\n onChange(args.doc)\n closeDrawer()\n },\n [onChange, closeDrawer],\n )\n\n const onSelect = useCallback<ListDrawerProps['onSelect']>(\n (args) => {\n setMissingFile(false)\n onChange({\n id: args.docID,\n })\n closeListDrawer()\n },\n [onChange, closeListDrawer],\n )\n\n if (collection.upload && typeof relationTo === 'string') {\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n Label={Label}\n field={field}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={Error} field={field} {...(errorProps || {})} />\n {collection?.upload && (\n <React.Fragment>\n {fileDoc && !missingFile && (\n <FileDetails\n collectionSlug={relationTo}\n customUploadActions={customUploadActions}\n doc={fileDoc}\n handleRemove={\n readOnly\n ? undefined\n : () => {\n onChange(null)\n }\n }\n uploadConfig={collection.upload}\n />\n )}\n {(!fileDoc || missingFile) && (\n <div className={`${baseClass}__wrap`}>\n <div className={`${baseClass}__buttons`}>\n {allowNewUpload && (\n <DocumentDrawerToggler\n className={`${baseClass}__toggler`}\n disabled={readOnly}\n >\n <Button buttonStyle=\"secondary\" disabled={readOnly} el=\"div\">\n {t('fields:uploadNewLabel', {\n label: getTranslation(collection.labels.singular, i18n),\n })}\n </Button>\n </DocumentDrawerToggler>\n )}\n <ListDrawerToggler className={`${baseClass}__toggler`} disabled={readOnly}>\n <Button buttonStyle=\"secondary\" disabled={readOnly} el=\"div\">\n {t('fields:chooseFromExisting')}\n </Button>\n </ListDrawerToggler>\n </div>\n </div>\n )}\n <FieldDescription\n Description={Description}\n field={field}\n {...(descriptionProps || {})}\n />\n </React.Fragment>\n )}\n {!readOnly && <DocumentDrawer onSave={onSave} />}\n {!readOnly && <ListDrawer onSelect={onSelect} />}\n </div>\n </div>\n )\n }\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ import type { UploadFieldProps } from 'payload';
2
+ import React from 'react';
3
+ import type { useField } from '../../../forms/useField/index.js';
4
+ import './index.scss';
5
+ export type UploadFieldPropsWithContext<TValue extends string | string[] = string> = {
6
+ readonly canCreate: boolean;
7
+ readonly disabled: boolean;
8
+ readonly fieldHookResult: ReturnType<typeof useField<TValue>>;
9
+ readonly onChange: (value: unknown) => void;
10
+ } & UploadFieldProps;
11
+ export declare const UploadComponentHasOne: React.FC<UploadFieldPropsWithContext>;
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/fields/Upload/HasOne/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE/C,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAIhE,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,2BAA2B,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,IAAI;IACnF,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;IAC7D,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CAC5C,GAAG,gBAAgB,CAAA;AAEpB,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAwDvE,CAAA"}
@@ -0,0 +1,131 @@
1
+ 'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ import React from 'react';
6
+ import { useConfig } from '../../../providers/Config/index.js';
7
+ import { UploadInputHasOne } from './Input.js';
8
+ import './index.scss';
9
+ export const UploadComponentHasOne = props => {
10
+ const $ = _c(23);
11
+ const {
12
+ canCreate,
13
+ descriptionProps,
14
+ disabled,
15
+ errorProps,
16
+ field,
17
+ field: t0,
18
+ fieldHookResult,
19
+ labelProps,
20
+ onChange
21
+ } = props;
22
+ const {
23
+ admin: t1,
24
+ label,
25
+ relationTo,
26
+ required
27
+ } = t0;
28
+ let t2;
29
+ if ($[0] !== t1) {
30
+ t2 = t1 === undefined ? {} : t1;
31
+ $[0] = t1;
32
+ $[1] = t2;
33
+ } else {
34
+ t2 = $[1];
35
+ }
36
+ const {
37
+ className,
38
+ style,
39
+ width
40
+ } = t2;
41
+ const {
42
+ config: t3
43
+ } = useConfig();
44
+ const {
45
+ collections,
46
+ routes: t4,
47
+ serverURL
48
+ } = t3;
49
+ const {
50
+ api: apiRoute
51
+ } = t4;
52
+ if (typeof relationTo === "string") {
53
+ let t5;
54
+ if ($[2] !== relationTo || $[3] !== collections || $[4] !== field || $[5] !== canCreate || $[6] !== apiRoute || $[7] !== className || $[8] !== descriptionProps || $[9] !== errorProps || $[10] !== fieldHookResult || $[11] !== label || $[12] !== labelProps || $[13] !== onChange || $[14] !== disabled || $[15] !== required || $[16] !== serverURL || $[17] !== style || $[18] !== width) {
55
+ t5 = Symbol.for("react.early_return_sentinel");
56
+ bb0: {
57
+ let t6;
58
+ if ($[20] !== relationTo) {
59
+ t6 = coll => coll.slug === relationTo;
60
+ $[20] = relationTo;
61
+ $[21] = t6;
62
+ } else {
63
+ t6 = $[21];
64
+ }
65
+ const collection = collections.find(t6);
66
+ if (collection.upload) {
67
+ t5 = _jsx(UploadInputHasOne, {
68
+ Description: field?.admin?.components?.Description,
69
+ Error: field?.admin?.components?.Error,
70
+ Label: field?.admin?.components?.Label,
71
+ allowNewUpload: canCreate,
72
+ api: apiRoute,
73
+ className,
74
+ collection,
75
+ descriptionProps,
76
+ errorProps,
77
+ filterOptions: fieldHookResult.filterOptions,
78
+ label,
79
+ labelProps,
80
+ onChange,
81
+ readOnly: disabled,
82
+ relationTo,
83
+ required,
84
+ serverURL,
85
+ showError: fieldHookResult.showError,
86
+ style,
87
+ value: fieldHookResult.value,
88
+ width
89
+ });
90
+ break bb0;
91
+ }
92
+ }
93
+ $[2] = relationTo;
94
+ $[3] = collections;
95
+ $[4] = field;
96
+ $[5] = canCreate;
97
+ $[6] = apiRoute;
98
+ $[7] = className;
99
+ $[8] = descriptionProps;
100
+ $[9] = errorProps;
101
+ $[10] = fieldHookResult;
102
+ $[11] = label;
103
+ $[12] = labelProps;
104
+ $[13] = onChange;
105
+ $[14] = disabled;
106
+ $[15] = required;
107
+ $[16] = serverURL;
108
+ $[17] = style;
109
+ $[18] = width;
110
+ $[19] = t5;
111
+ } else {
112
+ t5 = $[19];
113
+ }
114
+ if (t5 !== Symbol.for("react.early_return_sentinel")) {
115
+ return t5;
116
+ }
117
+ } else {
118
+ let t5;
119
+ if ($[22] === Symbol.for("react.memo_cache_sentinel")) {
120
+ t5 = _jsx("div", {
121
+ children: "Polymorphic Has One Uploads Go Here"
122
+ });
123
+ $[22] = t5;
124
+ } else {
125
+ t5 = $[22];
126
+ }
127
+ return t5;
128
+ }
129
+ return null;
130
+ };
131
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useConfig","UploadInputHasOne","UploadComponentHasOne","props","$","canCreate","descriptionProps","disabled","errorProps","field","t0","fieldHookResult","labelProps","onChange","admin","t1","label","relationTo","required","t2","undefined","className","style","width","config","t3","collections","routes","t4","serverURL","api","apiRoute","t5","Symbol","for","t6","coll","slug","collection","find","upload","_jsx","Description","components","Error","Label","allowNewUpload","filterOptions","readOnly","showError","value","children"],"sources":["../../../../src/fields/Upload/HasOne/index.tsx"],"sourcesContent":["'use client'\n\nimport type { UploadFieldProps } from 'payload'\n\nimport React from 'react'\n\nimport type { useField } from '../../../forms/useField/index.js'\n\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { UploadInputHasOne } from './Input.js'\nimport './index.scss'\n\nexport type UploadFieldPropsWithContext<TValue extends string | string[] = string> = {\n readonly canCreate: boolean\n readonly disabled: boolean\n readonly fieldHookResult: ReturnType<typeof useField<TValue>>\n readonly onChange: (value: unknown) => void\n} & UploadFieldProps\n\nexport const UploadComponentHasOne: React.FC<UploadFieldPropsWithContext> = (props) => {\n const {\n canCreate,\n descriptionProps,\n disabled,\n errorProps,\n field,\n field: { admin: { className, style, width } = {}, label, relationTo, required },\n fieldHookResult,\n labelProps,\n onChange,\n } = props\n\n const {\n config: {\n collections,\n routes: { api: apiRoute },\n serverURL,\n },\n } = useConfig()\n\n if (typeof relationTo === 'string') {\n const collection = collections.find((coll) => coll.slug === relationTo)\n\n if (collection.upload) {\n return (\n <UploadInputHasOne\n Description={field?.admin?.components?.Description}\n Error={field?.admin?.components?.Error}\n Label={field?.admin?.components?.Label}\n allowNewUpload={canCreate}\n api={apiRoute}\n className={className}\n collection={collection}\n descriptionProps={descriptionProps}\n errorProps={errorProps}\n filterOptions={fieldHookResult.filterOptions}\n label={label}\n labelProps={labelProps}\n onChange={onChange}\n readOnly={disabled}\n relationTo={relationTo}\n required={required}\n serverURL={serverURL}\n showError={fieldHookResult.showError}\n style={style}\n value={fieldHookResult.value}\n width={width}\n />\n )\n }\n } else {\n return <div>Polymorphic Has One Uploads Go Here</div>\n }\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- @import '../../scss/styles.scss';
1
+ @import '../../../scss/styles.scss';
2
2
 
3
3
  .upload {
4
4
  position: relative;
@@ -1,9 +1,9 @@
1
1
  import type { UploadFieldProps } from 'payload';
2
2
  import React from 'react';
3
- import type { UploadInputProps } from './Input.js';
4
- import { UploadInput } from './Input.js';
5
- import './index.scss';
6
- export { UploadFieldProps, UploadInput };
3
+ import type { UploadInputProps } from './HasOne/Input.js';
4
+ import { UploadInputHasOne } from './HasOne/Input.js';
5
+ export { UploadFieldProps, UploadInputHasOne as UploadInput };
7
6
  export type { UploadInputProps };
7
+ export declare const baseClass = "upload";
8
8
  export declare const UploadField: React.FC<UploadFieldProps>;
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Upload/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE/C,OAAO,KAA+B,MAAM,OAAO,CAAA;AAEnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAOlD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,OAAO,cAAc,CAAA;AAErB,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAA;AACxC,YAAY,EAAE,gBAAgB,EAAE,CAAA;AAsGhC,eAAO,MAAM,WAAW,4BAAiC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Upload/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE/C,OAAO,KAA+B,MAAM,OAAO,CAAA;AAEnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAOzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAGrD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,IAAI,WAAW,EAAE,CAAA;AAC7D,YAAY,EAAE,gBAAgB,EAAE,CAAA;AAEhC,eAAO,MAAM,SAAS,WAAW,CAAA;AA2FjC,eAAO,MAAM,WAAW,4BAAiC,CAAA"}
@@ -7,25 +7,22 @@ import { useFieldProps } from '../../forms/FieldPropsProvider/index.js';
7
7
  import { useField } from '../../forms/useField/index.js';
8
8
  import { withCondition } from '../../forms/withCondition/index.js';
9
9
  import { useAuth } from '../../providers/Auth/index.js';
10
- import { useConfig } from '../../providers/Config/index.js';
11
- import { UploadInput } from './Input.js';
12
- import './index.scss';
13
- export { UploadInput };
10
+ import { UploadComponentHasMany } from './HasMany/index.js';
11
+ import { UploadInputHasOne } from './HasOne/Input.js';
12
+ import { UploadComponentHasOne } from './HasOne/index.js';
13
+ export { UploadInputHasOne as UploadInput };
14
+ export const baseClass = 'upload';
14
15
  const UploadComponent = props => {
15
- const $ = _c(12);
16
+ const $ = _c(22);
16
17
  const {
17
- descriptionProps,
18
- errorProps,
19
- field,
20
18
  field: t0,
21
- labelProps,
22
19
  readOnly: readOnlyFromTopLevelProps,
23
20
  validate
24
21
  } = props;
25
22
  const {
26
23
  _path: pathFromProps,
27
24
  admin: t1,
28
- label,
25
+ hasMany,
29
26
  relationTo,
30
27
  required
31
28
  } = t0;
@@ -38,38 +35,15 @@ const UploadComponent = props => {
38
35
  t2 = $[1];
39
36
  }
40
37
  const {
41
- className,
42
- readOnly: readOnlyFromAdmin,
43
- style,
44
- width
38
+ readOnly: readOnlyFromAdmin
45
39
  } = t2;
46
40
  const readOnlyFromProps = readOnlyFromTopLevelProps || readOnlyFromAdmin;
47
- const {
48
- config: t3
49
- } = useConfig();
50
- const {
51
- collections,
52
- routes: t4,
53
- serverURL
54
- } = t3;
55
- const {
56
- api: apiRoute
57
- } = t4;
58
41
  const {
59
42
  permissions
60
43
  } = useAuth();
61
- let t5;
62
- if ($[2] !== relationTo) {
63
- t5 = coll => coll.slug === relationTo;
64
- $[2] = relationTo;
65
- $[3] = t5;
66
- } else {
67
- t5 = $[3];
68
- }
69
- const collection = collections.find(t5);
70
- let t6;
71
- if ($[4] !== validate || $[5] !== required) {
72
- t6 = (value, options) => {
44
+ let t3;
45
+ if ($[2] !== validate || $[3] !== required) {
46
+ t3 = (value, options) => {
73
47
  if (typeof validate === "function") {
74
48
  return validate(value, {
75
49
  ...options,
@@ -77,88 +51,100 @@ const UploadComponent = props => {
77
51
  });
78
52
  }
79
53
  };
80
- $[4] = validate;
81
- $[5] = required;
82
- $[6] = t6;
54
+ $[2] = validate;
55
+ $[3] = required;
56
+ $[4] = t3;
83
57
  } else {
84
- t6 = $[6];
58
+ t3 = $[4];
85
59
  }
86
- const memoizedValidate = t6;
60
+ const memoizedValidate = t3;
87
61
  const {
88
62
  path: pathFromContext,
89
63
  readOnly: readOnlyFromContext
90
64
  } = useFieldProps();
91
- let t7;
65
+ let t4;
92
66
  bb0: {
93
- if (permissions?.collections && permissions.collections?.[relationTo]?.create) {
94
- if (permissions.collections[relationTo].create?.permission === true) {
95
- t7 = true;
96
- break bb0;
67
+ if (typeof relationTo === "string") {
68
+ if (permissions?.collections && permissions.collections?.[relationTo]?.create) {
69
+ if (permissions.collections[relationTo].create?.permission === true) {
70
+ t4 = true;
71
+ break bb0;
72
+ }
97
73
  }
98
74
  }
99
- t7 = false;
75
+ t4 = false;
100
76
  }
101
- const canCreate = t7;
102
- const t8 = pathFromContext ?? pathFromProps;
103
- let t9;
104
- if ($[7] !== t8 || $[8] !== memoizedValidate) {
105
- t9 = {
106
- path: t8,
77
+ const canCreate = t4;
78
+ const t5 = pathFromContext ?? pathFromProps;
79
+ let t6;
80
+ if ($[5] !== t5 || $[6] !== memoizedValidate) {
81
+ t6 = {
82
+ path: t5,
107
83
  validate: memoizedValidate
108
84
  };
109
- $[7] = t8;
110
- $[8] = memoizedValidate;
111
- $[9] = t9;
85
+ $[5] = t5;
86
+ $[6] = memoizedValidate;
87
+ $[7] = t6;
112
88
  } else {
113
- t9 = $[9];
89
+ t6 = $[7];
114
90
  }
115
- const {
116
- filterOptions,
117
- formInitializing,
118
- formProcessing,
119
- setValue,
120
- showError,
121
- value: value_0
122
- } = useField(t9);
123
- const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing;
124
- let t10;
125
- if ($[10] !== setValue) {
126
- t10 = incomingValue => {
91
+ const fieldHookResult = useField(t6);
92
+ let t7;
93
+ t7 = fieldHookResult.setValue;
94
+ const setValue = t7;
95
+ const disabled = readOnlyFromProps || readOnlyFromContext || fieldHookResult.formProcessing || fieldHookResult.formInitializing;
96
+ let t8;
97
+ if ($[8] !== setValue) {
98
+ t8 = incomingValue => {
127
99
  const incomingID = incomingValue?.id || incomingValue;
128
100
  setValue(incomingID);
129
101
  };
130
- $[10] = setValue;
131
- $[11] = t10;
102
+ $[8] = setValue;
103
+ $[9] = t8;
132
104
  } else {
133
- t10 = $[11];
105
+ t8 = $[9];
134
106
  }
135
- const onChange = t10;
136
- if (collection.upload) {
137
- return _jsx(UploadInput, {
138
- Description: field?.admin?.components?.Description,
139
- Error: field?.admin?.components?.Error,
140
- Label: field?.admin?.components?.Label,
141
- allowNewUpload: canCreate,
142
- api: apiRoute,
143
- className,
144
- collection,
145
- descriptionProps,
146
- errorProps,
147
- filterOptions,
148
- label,
149
- labelProps,
150
- onChange,
151
- readOnly: disabled,
152
- relationTo,
153
- required,
154
- serverURL,
155
- showError,
156
- style,
157
- value: value_0,
158
- width
107
+ const onChange = t8;
108
+ if (hasMany) {
109
+ let t9;
110
+ if ($[10] !== props || $[11] !== canCreate || $[12] !== disabled || $[13] !== fieldHookResult || $[14] !== onChange) {
111
+ t9 = _jsx(UploadComponentHasMany, {
112
+ ...props,
113
+ canCreate,
114
+ disabled,
115
+ fieldHookResult,
116
+ onChange
117
+ });
118
+ $[10] = props;
119
+ $[11] = canCreate;
120
+ $[12] = disabled;
121
+ $[13] = fieldHookResult;
122
+ $[14] = onChange;
123
+ $[15] = t9;
124
+ } else {
125
+ t9 = $[15];
126
+ }
127
+ return t9;
128
+ }
129
+ let t9;
130
+ if ($[16] !== props || $[17] !== canCreate || $[18] !== disabled || $[19] !== fieldHookResult || $[20] !== onChange) {
131
+ t9 = _jsx(UploadComponentHasOne, {
132
+ ...props,
133
+ canCreate,
134
+ disabled,
135
+ fieldHookResult,
136
+ onChange
159
137
  });
138
+ $[16] = props;
139
+ $[17] = canCreate;
140
+ $[18] = disabled;
141
+ $[19] = fieldHookResult;
142
+ $[20] = onChange;
143
+ $[21] = t9;
144
+ } else {
145
+ t9 = $[21];
160
146
  }
161
- return null;
147
+ return t9;
162
148
  };
163
149
  export const UploadField = withCondition(UploadComponent);
164
150
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useCallback","useMemo","useFieldProps","useField","withCondition","useAuth","useConfig","UploadInput","UploadComponent","props","$","descriptionProps","errorProps","field","t0","labelProps","readOnly","readOnlyFromTopLevelProps","validate","_path","pathFromProps","admin","t1","label","relationTo","required","t2","undefined","className","readOnlyFromAdmin","style","width","readOnlyFromProps","config","t3","collections","routes","t4","serverURL","api","apiRoute","permissions","t5","coll","slug","collection","find","t6","value","options","memoizedValidate","path","pathFromContext","readOnlyFromContext","t7","bb0","create","permission","canCreate","t8","t9","filterOptions","formInitializing","formProcessing","setValue","showError","value_0","disabled","t10","incomingValue","incomingID","id","onChange","upload","_jsx","Description","components","Error","Label","allowNewUpload","UploadField"],"sources":["../../../src/fields/Upload/index.tsx"],"sourcesContent":["'use client'\n\nimport type { UploadFieldProps } from 'payload'\n\nimport React, { useCallback, useMemo } from 'react'\n\nimport type { UploadInputProps } from './Input.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { UploadInput } from './Input.js'\nimport './index.scss'\n\nexport { UploadFieldProps, UploadInput }\nexport type { UploadInputProps }\n\nconst UploadComponent: React.FC<UploadFieldProps> = (props) => {\n const {\n descriptionProps,\n errorProps,\n field,\n field: {\n _path: pathFromProps,\n admin: { className, readOnly: readOnlyFromAdmin, style, width } = {},\n label,\n relationTo,\n required,\n },\n labelProps,\n readOnly: readOnlyFromTopLevelProps,\n validate,\n } = props\n\n const readOnlyFromProps = readOnlyFromTopLevelProps || readOnlyFromAdmin\n\n const {\n config: {\n collections,\n routes: { api: apiRoute },\n serverURL,\n },\n } = useConfig()\n\n const { permissions } = useAuth()\n\n const collection = collections.find((coll) => coll.slug === relationTo)\n\n const memoizedValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, required })\n }\n },\n [validate, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n // Checks if the user has permissions to create a new document in the related collection\n const canCreate = useMemo(() => {\n if (permissions?.collections && permissions.collections?.[relationTo]?.create) {\n if (permissions.collections[relationTo].create?.permission === true) {\n return true\n }\n }\n\n return false\n }, [relationTo, permissions])\n\n const { filterOptions, formInitializing, formProcessing, setValue, showError, value } =\n useField<string>({\n path: pathFromContext ?? pathFromProps,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n const onChange = useCallback(\n (incomingValue) => {\n const incomingID = incomingValue?.id || incomingValue\n setValue(incomingID)\n },\n [setValue],\n )\n\n if (collection.upload) {\n return (\n <UploadInput\n Description={field?.admin?.components?.Description}\n Error={field?.admin?.components?.Error}\n Label={field?.admin?.components?.Label}\n allowNewUpload={canCreate}\n api={apiRoute}\n className={className}\n collection={collection}\n descriptionProps={descriptionProps}\n errorProps={errorProps}\n filterOptions={filterOptions}\n label={label}\n labelProps={labelProps}\n onChange={onChange}\n readOnly={disabled}\n relationTo={relationTo}\n required={required}\n serverURL={serverURL}\n showError={showError}\n style={style}\n value={value}\n width={width}\n />\n )\n }\n\n return null\n}\n\nexport const UploadField = withCondition(UploadComponent)\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useCallback","useMemo","useFieldProps","useField","withCondition","useAuth","UploadComponentHasMany","UploadInputHasOne","UploadComponentHasOne","UploadInput","baseClass","UploadComponent","props","$","field","t0","readOnly","readOnlyFromTopLevelProps","validate","_path","pathFromProps","admin","t1","hasMany","relationTo","required","t2","undefined","readOnlyFromAdmin","readOnlyFromProps","permissions","t3","value","options","memoizedValidate","path","pathFromContext","readOnlyFromContext","t4","bb0","collections","create","permission","canCreate","t5","t6","fieldHookResult","t7","setValue","disabled","formProcessing","formInitializing","t8","incomingValue","incomingID","id","onChange","t9","_jsx","UploadField"],"sources":["../../../src/fields/Upload/index.tsx"],"sourcesContent":["'use client'\n\nimport type { UploadFieldProps } from 'payload'\n\nimport React, { useCallback, useMemo } from 'react'\n\nimport type { UploadInputProps } from './HasOne/Input.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { UploadComponentHasMany } from './HasMany/index.js'\nimport { UploadInputHasOne } from './HasOne/Input.js'\nimport { UploadComponentHasOne } from './HasOne/index.js'\n\nexport { UploadFieldProps, UploadInputHasOne as UploadInput }\nexport type { UploadInputProps }\n\nexport const baseClass = 'upload'\n\nconst UploadComponent: React.FC<UploadFieldProps> = (props) => {\n const {\n field: {\n _path: pathFromProps,\n admin: { readOnly: readOnlyFromAdmin } = {},\n hasMany,\n relationTo,\n required,\n },\n readOnly: readOnlyFromTopLevelProps,\n validate,\n } = props\n\n const readOnlyFromProps = readOnlyFromTopLevelProps || readOnlyFromAdmin\n\n const { permissions } = useAuth()\n\n const memoizedValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, required })\n }\n },\n [validate, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n // Checks if the user has permissions to create a new document in the related collection\n const canCreate = useMemo(() => {\n if (typeof relationTo === 'string') {\n if (permissions?.collections && permissions.collections?.[relationTo]?.create) {\n if (permissions.collections[relationTo].create?.permission === true) {\n return true\n }\n }\n }\n\n return false\n }, [relationTo, permissions])\n\n const fieldHookResult = useField<string | string[]>({\n path: pathFromContext ?? pathFromProps,\n validate: memoizedValidate,\n })\n\n const setValue = useMemo(() => fieldHookResult.setValue, [fieldHookResult])\n\n const disabled =\n readOnlyFromProps ||\n readOnlyFromContext ||\n fieldHookResult.formProcessing ||\n fieldHookResult.formInitializing\n\n const onChange = useCallback(\n (incomingValue) => {\n const incomingID = incomingValue?.id || incomingValue\n setValue(incomingID)\n },\n [setValue],\n )\n\n if (hasMany) {\n return (\n <UploadComponentHasMany\n {...props}\n canCreate={canCreate}\n disabled={disabled}\n // Note: the below TS error is thrown bc the field hook return result varies based on `hasMany`\n // @ts-expect-error\n fieldHookResult={fieldHookResult}\n onChange={onChange}\n />\n )\n }\n\n return (\n <UploadComponentHasOne\n {...props}\n canCreate={canCreate}\n disabled={disabled}\n // Note: the below TS error is thrown bc the field hook return result varies based on `hasMany`\n // @ts-expect-error\n fieldHookResult={fieldHookResult}\n onChange={onChange}\n />\n )\n}\n\nexport const UploadField = withCondition(UploadComponent)\n"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,5 @@
1
1
  'use client';
2
2
 
3
- import { c as _c } from "react/compiler-runtime";
4
3
  import { jsx as _jsx } from "react/jsx-runtime";
5
4
  import React, { forwardRef } from 'react';
6
5
  import { Button } from '../../elements/Button/index.js';
@@ -8,43 +7,28 @@ import { useForm, useFormInitializing, useFormProcessing } from '../Form/context
8
7
  import './index.scss';
9
8
  const baseClass = 'form-submit';
10
9
  export const FormSubmit = /*#__PURE__*/forwardRef((props, ref) => {
11
- const $ = _c(7);
12
10
  const {
13
- type: t0,
11
+ type = 'submit',
14
12
  buttonId: id,
15
13
  children,
16
14
  disabled: disabledFromProps
17
15
  } = props;
18
- const type = t0 === undefined ? "submit" : t0;
19
16
  const processing = useFormProcessing();
20
17
  const initializing = useFormInitializing();
21
18
  const {
22
19
  disabled
23
20
  } = useForm();
24
21
  const canSave = !(disabledFromProps || initializing || processing || disabled);
25
- let t1;
26
- if ($[0] !== canSave || $[1] !== ref || $[2] !== props || $[3] !== id || $[4] !== type || $[5] !== children) {
27
- t1 = _jsx("div", {
28
- className: baseClass,
29
- children: _jsx(Button, {
30
- ref,
31
- ...props,
32
- disabled: canSave ? undefined : true,
33
- id,
34
- type,
35
- children
36
- })
37
- });
38
- $[0] = canSave;
39
- $[1] = ref;
40
- $[2] = props;
41
- $[3] = id;
42
- $[4] = type;
43
- $[5] = children;
44
- $[6] = t1;
45
- } else {
46
- t1 = $[6];
47
- }
48
- return t1;
22
+ return /*#__PURE__*/_jsx("div", {
23
+ className: baseClass,
24
+ children: /*#__PURE__*/_jsx(Button, {
25
+ ref: ref,
26
+ ...props,
27
+ disabled: canSave ? undefined : true,
28
+ id: id,
29
+ type: type,
30
+ children: children
31
+ })
32
+ });
49
33
  });
50
34
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","forwardRef","Button","useForm","useFormInitializing","useFormProcessing","baseClass","FormSubmit","props","ref","$","type","t0","buttonId","id","children","disabled","disabledFromProps","undefined","processing","initializing","canSave","t1","_jsx","className"],"sources":["../../../src/forms/Submit/index.tsx"],"sourcesContent":["'use client'\nimport React, { forwardRef } from 'react'\n\nimport type { Props } from '../../elements/Button/types.js'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { useForm, useFormInitializing, useFormProcessing } from '../Form/context.js'\nimport './index.scss'\n\nconst baseClass = 'form-submit'\n\nexport const FormSubmit = forwardRef<HTMLButtonElement, Props>((props, ref) => {\n const { type = 'submit', buttonId: id, children, disabled: disabledFromProps } = props\n const processing = useFormProcessing()\n const initializing = useFormInitializing()\n const { disabled } = useForm()\n\n const canSave = !(disabledFromProps || initializing || processing || disabled)\n\n return (\n <div className={baseClass}>\n <Button ref={ref} {...props} disabled={canSave ? undefined : true} id={id} type={type}>\n {children}\n </Button>\n </div>\n )\n})\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,IAASC,UAAU,QAAQ;AAIlC,SAASC,MAAM,QAAQ;AACvB,SAASC,OAAO,EAAEC,mBAAmB,EAAEC,iBAAiB,QAAQ;AAChE,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,UAAA,gBAAaN,UAAA,CAAqC,CAAAO,KAAA,EAAAC,GAAA;EAAA,MAAAC,CAAA,GAAAX,EAAA;EAC7D;IAAAY,IAAA,EAAAC,EAAA;IAAAC,QAAA,EAAAC,EAAA;IAAAC,QAAA;IAAAC,QAAA,EAAAC;EAAA,IAAiFT,KAAA;EAAzE,MAAAG,IAAA,GAAAC,EAAe,KAAAM,SAAA,GAAR,QAAQ,GAAfN,EAAe;EACvB,MAAAO,UAAA,GAAmBd,iBAAA;EACnB,MAAAe,YAAA,GAAqBhB,mBAAA;EACrB;IAAAY;EAAA,IAAqBb,OAAA;EAErB,MAAAkB,OAAA,KAAkBJ,iBAAA,IAAqBG,YAAA,IAAgBD,UAAA,IAAcH,QAAO;EAAA,IAAAM,EAAA;EAAA,IAAAZ,CAAA,QAAAW,OAAA,IAAAX,CAAA,QAAAD,GAAA,IAAAC,CAAA,QAAAF,KAAA,IAAAE,CAAA,QAAAI,EAAA,IAAAJ,CAAA,QAAAC,IAAA,IAAAD,CAAA,QAAAK,QAAA;IAG1EO,EAAA,GAAAC,IAAA,CAAC;MAAAC,SAAA,EAAAlB,SAAA;MAAAS,QAAA,EACCQ,IAAA,CAAArB,MAAA;QAAAO,GAAA;QAAA,GAAsBD,KAAK;QAAAQ,QAAA,EAAYK,OAAA,GAAAH,SAAA,OAAsB;QAAAJ,EAAA;QAAAH,IAAA;QAAAI;MAAA,C;;;;;;;;;;;;SAD/DO,E;CAMJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","forwardRef","Button","useForm","useFormInitializing","useFormProcessing","baseClass","FormSubmit","props","ref","type","buttonId","id","children","disabled","disabledFromProps","processing","initializing","canSave","_jsx","className","undefined"],"sources":["../../../src/forms/Submit/index.tsx"],"sourcesContent":["'use client'\nimport React, { forwardRef } from 'react'\n\nimport type { Props } from '../../elements/Button/types.js'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { useForm, useFormInitializing, useFormProcessing } from '../Form/context.js'\nimport './index.scss'\n\nconst baseClass = 'form-submit'\n\nexport const FormSubmit = forwardRef<HTMLButtonElement, Props>((props, ref) => {\n const { type = 'submit', buttonId: id, children, disabled: disabledFromProps } = props\n const processing = useFormProcessing()\n const initializing = useFormInitializing()\n const { disabled } = useForm()\n\n const canSave = !(disabledFromProps || initializing || processing || disabled)\n\n return (\n <div className={baseClass}>\n <Button ref={ref} {...props} disabled={canSave ? undefined : true} id={id} type={type}>\n {children}\n </Button>\n </div>\n )\n})\n"],"mappings":"AAAA;;;AACA,OAAOA,KAAA,IAASC,UAAU,QAAQ;AAIlC,SAASC,MAAM,QAAQ;AACvB,SAASC,OAAO,EAAEC,mBAAmB,EAAEC,iBAAiB,QAAQ;AAChE,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,UAAA,gBAAaN,UAAA,CAAqC,CAACO,KAAA,EAAOC,GAAA;EACrE,MAAM;IAAEC,IAAA,GAAO,QAAQ;IAAEC,QAAA,EAAUC,EAAE;IAAEC,QAAQ;IAAEC,QAAA,EAAUC;EAAiB,CAAE,GAAGP,KAAA;EACjF,MAAMQ,UAAA,GAAaX,iBAAA;EACnB,MAAMY,YAAA,GAAeb,mBAAA;EACrB,MAAM;IAAEU;EAAQ,CAAE,GAAGX,OAAA;EAErB,MAAMe,OAAA,GAAU,EAAEH,iBAAA,IAAqBE,YAAA,IAAgBD,UAAA,IAAcF,QAAO;EAE5E,oBACEK,IAAA,CAAC;IAAIC,SAAA,EAAWd,SAAA;cACd,aAAAa,IAAA,CAACjB,MAAA;MAAOO,GAAA,EAAKA,GAAA;MAAM,GAAGD,KAAK;MAAEM,QAAA,EAAUI,OAAA,GAAUG,SAAA,GAAY;MAAMT,EAAA,EAAIA,EAAA;MAAIF,IAAA,EAAMA,IAAA;gBAC9EG;;;AAIT","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"addFieldStatePromise.d.ts","sourceRoot":"","sources":["../../../src/forms/buildStateFromSchema/addFieldStatePromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,mBAAmB,EACnB,KAAK,EAGL,SAAS,EACT,cAAc,EACf,MAAM,SAAS,CAAA;AAWhB,MAAM,MAAM,wBAAwB,GAAG;IACrC,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,IAAI,CAAA;IACV,KAAK,EAAE,KAAK,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO,CAAA;IACpD;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,EAAE,IAAI,CAAA;IACd,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC9B,eAAe,EAAE,OAAO,CAAA;IACxB,IAAI,EAAE,MAAM,CAAA;IAEZ,WAAW,EAAE,mBAAmB,CAAA;IAChC;;;OAGG;IACH,GAAG,EAAE,cAAc,CAAA;IACnB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,KAAK,EAAE,SAAS,CAAA;CACjB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,SAAgB,wBAAwB,KAAG,OAAO,CAAC,IAAI,CAugBvF,CAAA"}
1
+ {"version":3,"file":"addFieldStatePromise.d.ts","sourceRoot":"","sources":["../../../src/forms/buildStateFromSchema/addFieldStatePromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,mBAAmB,EACnB,KAAK,EAGL,SAAS,EACT,cAAc,EACf,MAAM,SAAS,CAAA;AAWhB,MAAM,MAAM,wBAAwB,GAAG;IACrC,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,IAAI,CAAA;IACV,KAAK,EAAE,KAAK,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO,CAAA;IACpD;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,EAAE,IAAI,CAAA;IACd,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC9B,eAAe,EAAE,OAAO,CAAA;IACxB,IAAI,EAAE,MAAM,CAAA;IAEZ,WAAW,EAAE,mBAAmB,CAAA;IAChC;;;OAGG;IACH,GAAG,EAAE,cAAc,CAAA;IACnB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,KAAK,EAAE,SAAS,CAAA;CACjB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,SAAgB,wBAAwB,KAAG,OAAO,CAAC,IAAI,CAoevF,CAAA"}