@skopon-cool/form-sdk 0.4.9 → 0.5.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/README.md +26 -1
- package/dist/adapter/a2uiAdapter.d.ts.map +1 -1
- package/dist/adapter/formOptions.d.ts +6 -0
- package/dist/adapter/formOptions.d.ts.map +1 -0
- package/dist/adapter/formSchema.d.ts.map +1 -1
- package/dist/adapter/formWeb.d.ts +14 -0
- package/dist/adapter/formWeb.d.ts.map +1 -0
- package/dist/blocks/registry.d.ts.map +1 -1
- package/dist/blocks/web/adapter.d.ts +8 -0
- package/dist/blocks/web/adapter.d.ts.map +1 -0
- package/dist/blocks/web/catalog.d.ts +9 -0
- package/dist/blocks/web/catalog.d.ts.map +1 -0
- package/dist/blocks/web/index.d.ts +3 -0
- package/dist/blocks/web/index.d.ts.map +1 -0
- package/dist/catalog/a2uiCustomCatalog.d.ts.map +1 -1
- package/dist/client/authStorage.d.ts +1 -1
- package/dist/client/authStorage.d.ts.map +1 -1
- package/dist/form-sdk.css +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1408 -1220
- package/dist/submit/intersectPayloadBlocksWithForm.d.ts.map +1 -1
- package/dist/types/index.d.ts +7 -2
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/adapter/a2uiAdapter.test.ts +96 -0
- package/src/adapter/a2uiAdapter.ts +3 -12
- package/src/adapter/formOptions.test.ts +60 -0
- package/src/adapter/formOptions.ts +36 -0
- package/src/adapter/formSchema.test.ts +68 -0
- package/src/adapter/formSchema.ts +19 -6
- package/src/adapter/formWeb.test.ts +38 -0
- package/src/adapter/formWeb.ts +41 -0
- package/src/blocks/registry.ts +6 -1
- package/src/blocks/web/adapter.ts +36 -0
- package/src/blocks/web/catalog.test.tsx +95 -0
- package/src/blocks/web/catalog.tsx +158 -0
- package/src/blocks/web/index.ts +11 -0
- package/src/catalog/a2uiCustomCatalog.tsx +6 -10
- package/src/catalog/invalidStaticOptions.test.tsx +62 -0
- package/src/client/authStorage.ts +1 -1
- package/src/index.ts +9 -0
- package/src/styles/index.css +87 -0
- package/src/submit/intersectPayloadBlocksWithForm.ts +14 -4
- package/src/submit/submit.test.ts +54 -2
- package/src/submit/validateFormSubmit.ts +2 -2
- package/src/types/index.ts +12 -2
package/src/types/index.ts
CHANGED
|
@@ -16,6 +16,7 @@ export type A2uiComponentName =
|
|
|
16
16
|
| 'DateTimeInput'
|
|
17
17
|
| 'FileUpload'
|
|
18
18
|
| 'SkoponMedia'
|
|
19
|
+
| 'SkoponWeb'
|
|
19
20
|
| 'SkoponSelect'
|
|
20
21
|
| 'SkoponResumeSelect'
|
|
21
22
|
| 'SkoponCaseSelect'
|
|
@@ -62,6 +63,7 @@ export type FormBlockType =
|
|
|
62
63
|
| 'image'
|
|
63
64
|
| 'video'
|
|
64
65
|
| 'audio'
|
|
66
|
+
| 'web'
|
|
65
67
|
|
|
66
68
|
export type FormMediaSize = 'huge' | 'large' | 'medium' | 'small' | 'icon'
|
|
67
69
|
|
|
@@ -131,6 +133,10 @@ export interface FormBlock {
|
|
|
131
133
|
mediaUrl?: string
|
|
132
134
|
mediaUrls?: string[]
|
|
133
135
|
mediaSize?: FormMediaSize
|
|
136
|
+
/** 网页展示块:iframe 地址,仅支持 HTTP(S) 或同源相对地址 */
|
|
137
|
+
webUrl?: string
|
|
138
|
+
/** 网页展示块:行内 iframe 高度(px) */
|
|
139
|
+
webHeight?: number
|
|
134
140
|
fileAcceptTypes?: string[]
|
|
135
141
|
fileAcceptExtensions?: string[]
|
|
136
142
|
filePlaceholderIcon?: FormFilePlaceholderIcon
|
|
@@ -173,16 +179,20 @@ export function isMediaBlockType(type: FormBlockType): boolean {
|
|
|
173
179
|
return type === 'image' || type === 'video' || type === 'audio'
|
|
174
180
|
}
|
|
175
181
|
|
|
182
|
+
export function isWebBlockType(type: FormBlockType): boolean {
|
|
183
|
+
return type === 'web'
|
|
184
|
+
}
|
|
185
|
+
|
|
176
186
|
export function isLayoutBlockType(type: FormBlockType): boolean {
|
|
177
187
|
return type === 'heading' || type === 'paragraph'
|
|
178
188
|
}
|
|
179
189
|
|
|
180
190
|
export function isInputBlockType(type: FormBlockType): boolean {
|
|
181
|
-
return !isLayoutBlockType(type) && !isMediaBlockType(type)
|
|
191
|
+
return !isLayoutBlockType(type) && !isMediaBlockType(type) && !isWebBlockType(type)
|
|
182
192
|
}
|
|
183
193
|
|
|
184
194
|
export function isDisplayBlockType(type: FormBlockType): boolean {
|
|
185
|
-
return isLayoutBlockType(type) || isMediaBlockType(type)
|
|
195
|
+
return isLayoutBlockType(type) || isMediaBlockType(type) || isWebBlockType(type)
|
|
186
196
|
}
|
|
187
197
|
|
|
188
198
|
export function isOptionsBlockType(type: FormBlockType): boolean {
|