@prolibu-suite/cobalt-form-vue 0.1.3 → 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.
- package/dist/FieldObject-Cxd3I0Jv.js +4 -0
- package/dist/components/CoFieldRenderer.test.d.ts +2 -0
- package/dist/components/CoFieldRenderer.test.d.ts.map +1 -0
- package/dist/components/CoFieldRenderer.vue.d.ts +40 -3
- package/dist/components/CoFieldRenderer.vue.d.ts.map +1 -1
- package/dist/components/CoFieldShell.vue.d.ts +23 -0
- package/dist/components/CoFieldShell.vue.d.ts.map +1 -0
- package/dist/components/CoFormRenderer.file.test.d.ts +2 -0
- package/dist/components/CoFormRenderer.file.test.d.ts.map +1 -0
- package/dist/components/CoFormRenderer.nested.test.d.ts +2 -0
- package/dist/components/CoFormRenderer.nested.test.d.ts.map +1 -0
- package/dist/components/CoFormRenderer.vue.d.ts +35 -6
- package/dist/components/CoFormRenderer.vue.d.ts.map +1 -1
- package/dist/components/fields/FieldBoolean.vue.d.ts.map +1 -1
- package/dist/components/fields/FieldColor.vue.d.ts +17 -0
- package/dist/components/fields/FieldColor.vue.d.ts.map +1 -0
- package/dist/components/fields/FieldDate.vue.d.ts.map +1 -1
- package/dist/components/fields/FieldDatePicker.vue.d.ts +18 -0
- package/dist/components/fields/FieldDatePicker.vue.d.ts.map +1 -0
- package/dist/components/fields/FieldFile.test.d.ts +2 -0
- package/dist/components/fields/FieldFile.test.d.ts.map +1 -0
- package/dist/components/fields/FieldFile.vue.d.ts +61 -0
- package/dist/components/fields/FieldFile.vue.d.ts.map +1 -0
- package/dist/components/fields/FieldMasked.test.d.ts +2 -0
- package/dist/components/fields/FieldMasked.test.d.ts.map +1 -0
- package/dist/components/fields/FieldMasked.vue.d.ts +23 -0
- package/dist/components/fields/FieldMasked.vue.d.ts.map +1 -0
- package/dist/components/fields/FieldMixed.vue.d.ts +17 -0
- package/dist/components/fields/FieldMixed.vue.d.ts.map +1 -0
- package/dist/components/fields/FieldMultiple.vue.d.ts +17 -0
- package/dist/components/fields/FieldMultiple.vue.d.ts.map +1 -0
- package/dist/components/fields/FieldNumber.vue.d.ts.map +1 -1
- package/dist/components/fields/FieldObject.vue.d.ts +18 -0
- package/dist/components/fields/FieldObject.vue.d.ts.map +1 -0
- package/dist/components/fields/FieldPhone.vue.d.ts +16 -0
- package/dist/components/fields/FieldPhone.vue.d.ts.map +1 -0
- package/dist/components/fields/FieldRef.vue.d.ts +2 -2
- package/dist/components/fields/FieldRichText.vue.d.ts +16 -0
- package/dist/components/fields/FieldRichText.vue.d.ts.map +1 -0
- package/dist/components/fields/FieldSelect.vue.d.ts.map +1 -1
- package/dist/components/fields/FieldText.vue.d.ts.map +1 -1
- package/dist/components/fields/FieldTextArea.vue.d.ts.map +1 -1
- package/dist/composables/useFileFieldStates.d.ts +41 -0
- package/dist/composables/useFileFieldStates.d.ts.map +1 -0
- package/dist/composables/useForm.d.ts.map +1 -1
- package/dist/composables/useForm.test.d.ts +2 -0
- package/dist/composables/useForm.test.d.ts.map +1 -0
- package/dist/composables/useRefFieldStates.d.ts +25 -0
- package/dist/composables/useRefFieldStates.d.ts.map +1 -0
- package/dist/index.css +1 -1
- package/dist/index.d.ts +25 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3921 -386
- package/dist/utils/fieldPath.d.ts +29 -0
- package/dist/utils/fieldPath.d.ts.map +1 -0
- package/dist/utils/formContext.d.ts +84 -0
- package/dist/utils/formContext.d.ts.map +1 -0
- package/dist/utils/gridCell.d.ts +28 -0
- package/dist/utils/gridCell.d.ts.map +1 -0
- package/dist/utils/gridCell.test.d.ts +2 -0
- package/dist/utils/gridCell.test.d.ts.map +1 -0
- package/dist/utils/normalizeMaskConfig.d.ts +23 -0
- package/dist/utils/normalizeMaskConfig.d.ts.map +1 -0
- package/dist/utils/normalizeMaskConfig.test.d.ts +2 -0
- package/dist/utils/normalizeMaskConfig.test.d.ts.map +1 -0
- package/dist/utils/sectionPreview.d.ts +26 -0
- package/dist/utils/sectionPreview.d.ts.map +1 -0
- package/dist/utils/sectionPreview.test.d.ts +2 -0
- package/dist/utils/sectionPreview.test.d.ts.map +1 -0
- package/package.json +13 -6
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type MaybeRefOrGetter } from 'vue';
|
|
2
|
+
import type { FieldDescriptor, RefResolver } from '@prolibu-suite/cobalt-form-core';
|
|
3
|
+
import type { RefState } from '../components/fields/FieldRef.vue';
|
|
4
|
+
import type { UseFormReturn } from './useForm';
|
|
5
|
+
import type { RefFieldsContext } from '../utils/formContext';
|
|
6
|
+
export interface UseRefFieldStatesOptions {
|
|
7
|
+
form: MaybeRefOrGetter<UseFormReturn>;
|
|
8
|
+
refResolver: () => RefResolver | undefined;
|
|
9
|
+
}
|
|
10
|
+
export interface UseRefFieldStatesReturn extends RefFieldsContext {
|
|
11
|
+
/** Reactive ref-field UI state, keyed by full field dot-path. */
|
|
12
|
+
refStates: Record<string, RefState>;
|
|
13
|
+
onRefOpen: (f: FieldDescriptor) => void;
|
|
14
|
+
onRefSearch: (f: FieldDescriptor, query: string) => void;
|
|
15
|
+
onRefLoadMore: (f: FieldDescriptor) => void;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The ref-field machine: per-field options/paging/selected-display state plus
|
|
19
|
+
* the search/load-more/open handlers, backed by the host `refResolver`. State
|
|
20
|
+
* is keyed by full dot-path (`path ?? name`) so nested object children work;
|
|
21
|
+
* top-level fields have `path === name`. Owns its own mount/schema-swap
|
|
22
|
+
* initialization (walks `field.children` recursively).
|
|
23
|
+
*/
|
|
24
|
+
export declare function useRefFieldStates(options: UseRefFieldStatesOptions): UseRefFieldStatesReturn;
|
|
25
|
+
//# sourceMappingURL=useRefFieldStates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRefFieldStates.d.ts","sourceRoot":"","sources":["../../src/composables/useRefFieldStates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,KAAK,gBAAgB,EAAE,MAAM,KAAK,CAAC;AACjF,OAAO,KAAK,EACV,eAAe,EAEf,WAAW,EAEZ,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAoB,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAK/E,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACtC,WAAW,EAAE,MAAM,WAAW,GAAG,SAAS,CAAC;CAC5C;AAED,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB;IAC/D,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACpC,SAAS,EAAE,CAAC,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;IACxC,WAAW,EAAE,CAAC,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzD,aAAa,EAAE,CAAC,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;CAC7C;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,uBAAuB,CAqJ5F"}
|
package/dist/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.co-
|
|
1
|
+
.co-field-shell[data-v-9aa9efaf]{display:flex;flex-direction:column;gap:var(--co-spacing-sm2, 8px)}.co-field-shell__label[data-v-9aa9efaf]{color:var(--co-semantic-text-secondary, #5f6368);font-family:var(--co-font-family-primary, sans-serif);font-size:var(--co-font-size-14, 14px);font-weight:400;letter-spacing:var(--co-font-letter-spacing-body, -.03em);line-height:1;padding:0 var(--co-spacing-xs, 4px)}.co-field-shell__required[data-v-9aa9efaf]{color:var(--co-color-status-error, #aa2e1b);margin-left:2px}.co-field-shell__control[data-v-9aa9efaf]{align-items:center;background:var(--co-semantic-surface-primary, #fff);border:1px solid var(--co-semantic-border-default, #d9dde3);border-radius:var(--co-border-radius-xs, 8px);display:flex;min-height:40px;padding:0 var(--co-spacing-md, 12px);transition:border-color .12s ease}.co-field-shell--sm .co-field-shell__control[data-v-9aa9efaf]{min-height:34px}.co-field-shell--lg .co-field-shell__control[data-v-9aa9efaf]{min-height:46px}.co-field-shell--focused .co-field-shell__control[data-v-9aa9efaf]{border-color:var(--co-semantic-border-focus, #2563eb)}.co-field-shell--error .co-field-shell__control[data-v-9aa9efaf]{border-color:var(--co-color-status-error, #aa2e1b)}.co-field-shell--disabled .co-field-shell__control[data-v-9aa9efaf]{background:var(--co-semantic-surface-hover, #f4f6f8);cursor:not-allowed}.co-field-shell__message[data-v-9aa9efaf]{color:var(--co-semantic-text-muted, #888888);font-family:var(--co-font-family-primary, sans-serif);font-size:var(--co-font-size-14, 14px);font-weight:400;letter-spacing:var(--co-font-letter-spacing-body, -.03em);line-height:1;margin:0;padding:0 var(--co-spacing-xs, 4px)}.co-field-shell--error .co-field-shell__message[data-v-9aa9efaf]{color:var(--co-semantic-status-error, #aa2e1b)}.co-field-shell__input[data-v-6a147f90]{background:transparent;border:none;color:var(--co-semantic-text-default, #1f2937);font-family:var(--co-font-family-primary, sans-serif);font-size:var(--co-font-size-14, 14px);line-height:1.3;outline:none;flex:1;min-width:0}.co-field-shell__input[data-v-6a147f90]::placeholder{color:var(--co-semantic-text-muted, #9aa0a6)}.co-field-shell__input[data-v-6a147f90]:disabled{cursor:not-allowed}.co-masked__clear[data-v-6a147f90]{align-items:center;background:transparent;border:none;color:var(--co-semantic-text-muted, #9aa0a6);cursor:pointer;display:flex;flex-shrink:0;justify-content:center;margin-left:var(--co-spacing-sm, 8px);padding:0;transition:color .15s ease;width:16px}.co-masked__clear[data-v-6a147f90]:hover{color:var(--co-semantic-text-default, #1f2937)}.co-form-footer[data-v-c59f7d9a]{margin-top:var(--co-spacing-2xl, 24px)}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,14 +1,31 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { createForm, useForm } from './composables/useForm';
|
|
2
2
|
export type { UseFormReturn } from './composables/useForm';
|
|
3
|
-
export { default as CoFormRenderer } from './components/CoFormRenderer.vue';
|
|
4
3
|
export { default as CoFieldRenderer } from './components/CoFieldRenderer.vue';
|
|
5
|
-
export { default as
|
|
6
|
-
export { default as FieldTextArea } from './components/fields/FieldTextArea.vue';
|
|
7
|
-
export { default as FieldNumber } from './components/fields/FieldNumber.vue';
|
|
8
|
-
export { default as FieldDate } from './components/fields/FieldDate.vue';
|
|
4
|
+
export { default as CoFormRenderer } from './components/CoFormRenderer.vue';
|
|
9
5
|
export { default as FieldBoolean } from './components/fields/FieldBoolean.vue';
|
|
10
|
-
export { default as
|
|
6
|
+
export { default as FieldColor } from './components/fields/FieldColor.vue';
|
|
7
|
+
export { default as FieldDate } from './components/fields/FieldDate.vue';
|
|
8
|
+
export { default as FieldDatePicker } from './components/fields/FieldDatePicker.vue';
|
|
9
|
+
export { default as FieldFile } from './components/fields/FieldFile.vue';
|
|
10
|
+
export type { FileItem } from './components/fields/FieldFile.vue';
|
|
11
|
+
export { default as FieldMasked } from './components/fields/FieldMasked.vue';
|
|
12
|
+
export { default as FieldMixed } from './components/fields/FieldMixed.vue';
|
|
13
|
+
export { default as FieldMultiple } from './components/fields/FieldMultiple.vue';
|
|
14
|
+
export { default as FieldNumber } from './components/fields/FieldNumber.vue';
|
|
15
|
+
export { default as FieldObject } from './components/fields/FieldObject.vue';
|
|
16
|
+
export { default as FieldPhone } from './components/fields/FieldPhone.vue';
|
|
11
17
|
export { default as FieldRef } from './components/fields/FieldRef.vue';
|
|
12
18
|
export type { RefState } from './components/fields/FieldRef.vue';
|
|
13
|
-
export
|
|
19
|
+
export { default as FieldSelect } from './components/fields/FieldSelect.vue';
|
|
20
|
+
export { default as FieldText } from './components/fields/FieldText.vue';
|
|
21
|
+
export { default as FieldTextArea } from './components/fields/FieldTextArea.vue';
|
|
22
|
+
export { DEFAULT_MASK_CONFIG, normalizeMaskConfig } from './utils/normalizeMaskConfig';
|
|
23
|
+
export type { NormalizedMaskConfig } from './utils/normalizeMaskConfig';
|
|
24
|
+
export { cellBindings, cellSpan, gridRootStyle, isFullWidthField, FULL_WIDTH_UICOMS } from './utils/gridCell';
|
|
25
|
+
export type { FormGap } from './utils/gridCell';
|
|
26
|
+
export { FORM_COLUMNS, FORM_DEPTH, FORM_ERRORS, FORM_EXPAND_ALL, FORM_FILE_FIELDS, FORM_REF_FIELDS, FORM_TOUCH, FORM_TOUCHED, } from './utils/formContext';
|
|
27
|
+
export type { FileFieldHandlers, FileFieldsContext, RefFieldHandlers, RefFieldsContext, } from './utils/formContext';
|
|
28
|
+
export { fieldKey, getValueAtPath, setValueAtPath, walkFields } from './utils/fieldPath';
|
|
29
|
+
export { computeInitialOpen, formatSectionPreview, hasAnyValue, hasEmptyRequiredChild, isEmptyValue, } from './utils/sectionPreview';
|
|
30
|
+
export type { FieldDescriptor, FieldKind, FormController, FormControllerOptions, FormSchemaInput, FormState, Locale, PageDefinition, PagedSchema, RefFieldOption, RefResolver, RefResolverArgs, RefResolverResult, ScoreResult, SubmitResult, UploadedFileRef, UploadResolver, UploadResolverArgs } from '@prolibu-suite/cobalt-form-core';
|
|
14
31
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAE5E,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,yCAAyC,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,mCAAmC,CAAC;AACzE,YAAY,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AACvE,YAAY,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvF,YAAY,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC9G,YAAY,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EACH,YAAY,EACZ,UAAU,EACV,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,YAAY,GACf,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACR,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACzF,OAAO,EACH,kBAAkB,EAClB,oBAAoB,EACpB,WAAW,EACX,qBAAqB,EACrB,YAAY,GACf,MAAM,wBAAwB,CAAC;AAEhC,YAAY,EACR,eAAe,EACf,SAAS,EACT,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,SAAS,EACT,MAAM,EACN,cAAc,EACd,WAAW,EACX,cAAc,EACd,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,eAAe,EACf,cAAc,EACd,kBAAkB,EACrB,MAAM,iCAAiC,CAAC"}
|