@23blocks/block-forms 1.0.2 → 1.0.4

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 (72) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.esm.js +420 -0
  3. package/dist/src/index.d.ts +7 -0
  4. package/dist/src/index.d.ts.map +1 -0
  5. package/dist/src/lib/forms.block.d.ts +15 -0
  6. package/dist/src/lib/forms.block.d.ts.map +1 -0
  7. package/dist/src/lib/mappers/form-instance.mapper.d.ts +4 -0
  8. package/dist/src/lib/mappers/form-instance.mapper.d.ts.map +1 -0
  9. package/dist/src/lib/mappers/form-schema.mapper.d.ts +4 -0
  10. package/dist/src/lib/mappers/form-schema.mapper.d.ts.map +1 -0
  11. package/dist/src/lib/mappers/form-set.mapper.d.ts +4 -0
  12. package/dist/src/lib/mappers/form-set.mapper.d.ts.map +1 -0
  13. package/dist/src/lib/mappers/form.mapper.d.ts +4 -0
  14. package/dist/src/lib/mappers/form.mapper.d.ts.map +1 -0
  15. package/dist/{lib/mappers/index.js → src/lib/mappers/index.d.ts} +1 -2
  16. package/dist/src/lib/mappers/index.d.ts.map +1 -0
  17. package/dist/src/lib/mappers/utils.d.ts +29 -0
  18. package/dist/src/lib/mappers/utils.d.ts.map +1 -0
  19. package/dist/src/lib/services/form-instances.service.d.ts +16 -0
  20. package/dist/src/lib/services/form-instances.service.d.ts.map +1 -0
  21. package/dist/src/lib/services/form-schemas.service.d.ts +14 -0
  22. package/dist/src/lib/services/form-schemas.service.d.ts.map +1 -0
  23. package/dist/src/lib/services/form-sets.service.d.ts +13 -0
  24. package/dist/src/lib/services/form-sets.service.d.ts.map +1 -0
  25. package/dist/src/lib/services/forms.service.d.ts +13 -0
  26. package/dist/src/lib/services/forms.service.d.ts.map +1 -0
  27. package/dist/{lib/services/index.js → src/lib/services/index.d.ts} +1 -2
  28. package/dist/src/lib/services/index.d.ts.map +1 -0
  29. package/dist/src/lib/types/form-instance.d.ts +40 -0
  30. package/dist/src/lib/types/form-instance.d.ts.map +1 -0
  31. package/dist/src/lib/types/form-schema.d.ts +42 -0
  32. package/dist/src/lib/types/form-schema.d.ts.map +1 -0
  33. package/dist/src/lib/types/form-set.d.ts +41 -0
  34. package/dist/src/lib/types/form-set.d.ts.map +1 -0
  35. package/dist/src/lib/types/form.d.ts +35 -0
  36. package/dist/src/lib/types/form.d.ts.map +1 -0
  37. package/dist/{lib/types/index.js → src/lib/types/index.d.ts} +1 -2
  38. package/dist/src/lib/types/index.d.ts.map +1 -0
  39. package/package.json +10 -8
  40. package/dist/index.js +0 -7
  41. package/dist/index.js.map +0 -1
  42. package/dist/lib/forms.block.js +0 -22
  43. package/dist/lib/forms.block.js.map +0 -1
  44. package/dist/lib/mappers/form-instance.mapper.js +0 -20
  45. package/dist/lib/mappers/form-instance.mapper.js.map +0 -1
  46. package/dist/lib/mappers/form-schema.mapper.js +0 -22
  47. package/dist/lib/mappers/form-schema.mapper.js.map +0 -1
  48. package/dist/lib/mappers/form-set.mapper.js +0 -19
  49. package/dist/lib/mappers/form-set.mapper.js.map +0 -1
  50. package/dist/lib/mappers/form.mapper.js +0 -19
  51. package/dist/lib/mappers/form.mapper.js.map +0 -1
  52. package/dist/lib/mappers/index.js.map +0 -1
  53. package/dist/lib/mappers/utils.js +0 -75
  54. package/dist/lib/mappers/utils.js.map +0 -1
  55. package/dist/lib/services/form-instances.service.js +0 -99
  56. package/dist/lib/services/form-instances.service.js.map +0 -1
  57. package/dist/lib/services/form-schemas.service.js +0 -67
  58. package/dist/lib/services/form-schemas.service.js.map +0 -1
  59. package/dist/lib/services/form-sets.service.js +0 -58
  60. package/dist/lib/services/form-sets.service.js.map +0 -1
  61. package/dist/lib/services/forms.service.js +0 -59
  62. package/dist/lib/services/forms.service.js.map +0 -1
  63. package/dist/lib/services/index.js.map +0 -1
  64. package/dist/lib/types/form-instance.js +0 -3
  65. package/dist/lib/types/form-instance.js.map +0 -1
  66. package/dist/lib/types/form-schema.js +0 -3
  67. package/dist/lib/types/form-schema.js.map +0 -1
  68. package/dist/lib/types/form-set.js +0 -3
  69. package/dist/lib/types/form-set.js.map +0 -1
  70. package/dist/lib/types/form.js +0 -3
  71. package/dist/lib/types/form.js.map +0 -1
  72. package/dist/lib/types/index.js.map +0 -1
@@ -0,0 +1,40 @@
1
+ import type { IdentityCore, EntityStatus } from '@23blocks/contracts';
2
+ export interface FormInstance extends IdentityCore {
3
+ formSchemaUniqueId: string;
4
+ formSchemaVersion: number;
5
+ userUniqueId?: string;
6
+ data: Record<string, unknown>;
7
+ status: EntityStatus;
8
+ enabled: boolean;
9
+ submittedAt?: Date;
10
+ payload?: Record<string, unknown>;
11
+ }
12
+ export interface CreateFormInstanceRequest {
13
+ formSchemaUniqueId: string;
14
+ formSchemaVersion?: number;
15
+ userUniqueId?: string;
16
+ data: Record<string, unknown>;
17
+ payload?: Record<string, unknown>;
18
+ }
19
+ export interface UpdateFormInstanceRequest {
20
+ data?: Record<string, unknown>;
21
+ enabled?: boolean;
22
+ status?: EntityStatus;
23
+ payload?: Record<string, unknown>;
24
+ }
25
+ export interface SubmitFormInstanceRequest {
26
+ formSchemaUniqueId: string;
27
+ formSchemaVersion?: number;
28
+ data: Record<string, unknown>;
29
+ payload?: Record<string, unknown>;
30
+ }
31
+ export interface ListFormInstancesParams {
32
+ page?: number;
33
+ perPage?: number;
34
+ formSchemaUniqueId?: string;
35
+ userUniqueId?: string;
36
+ status?: EntityStatus;
37
+ sortBy?: string;
38
+ sortOrder?: 'asc' | 'desc';
39
+ }
40
+ //# sourceMappingURL=form-instance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-instance.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/form-instance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEtE,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,yBAAyB;IACxC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,yBAAyB;IACxC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAC5B"}
@@ -0,0 +1,42 @@
1
+ import type { IdentityCore, EntityStatus } from '@23blocks/contracts';
2
+ export interface FormSchema extends IdentityCore {
3
+ formUniqueId: string;
4
+ code: string;
5
+ name: string;
6
+ description?: string;
7
+ version: number;
8
+ schema: Record<string, unknown>;
9
+ uiSchema?: Record<string, unknown>;
10
+ status: EntityStatus;
11
+ enabled: boolean;
12
+ payload?: Record<string, unknown>;
13
+ }
14
+ export interface CreateFormSchemaRequest {
15
+ formUniqueId: string;
16
+ code: string;
17
+ name: string;
18
+ description?: string;
19
+ version?: number;
20
+ schema: Record<string, unknown>;
21
+ uiSchema?: Record<string, unknown>;
22
+ payload?: Record<string, unknown>;
23
+ }
24
+ export interface UpdateFormSchemaRequest {
25
+ name?: string;
26
+ description?: string;
27
+ schema?: Record<string, unknown>;
28
+ uiSchema?: Record<string, unknown>;
29
+ enabled?: boolean;
30
+ status?: EntityStatus;
31
+ payload?: Record<string, unknown>;
32
+ }
33
+ export interface ListFormSchemasParams {
34
+ page?: number;
35
+ perPage?: number;
36
+ formUniqueId?: string;
37
+ status?: EntityStatus;
38
+ version?: number;
39
+ sortBy?: string;
40
+ sortOrder?: 'asc' | 'desc';
41
+ }
42
+ //# sourceMappingURL=form-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-schema.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/form-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEtE,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC9C,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,uBAAuB;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAC5B"}
@@ -0,0 +1,41 @@
1
+ import type { IdentityCore, EntityStatus } from '@23blocks/contracts';
2
+ export interface FormSet extends IdentityCore {
3
+ code: string;
4
+ name: string;
5
+ description?: string;
6
+ forms: FormReference[];
7
+ status: EntityStatus;
8
+ enabled: boolean;
9
+ payload?: Record<string, unknown>;
10
+ }
11
+ export interface FormReference {
12
+ formUniqueId: string;
13
+ formCode?: string;
14
+ formName?: string;
15
+ displayOrder?: number;
16
+ required?: boolean;
17
+ }
18
+ export interface CreateFormSetRequest {
19
+ code: string;
20
+ name: string;
21
+ description?: string;
22
+ forms?: FormReference[];
23
+ payload?: Record<string, unknown>;
24
+ }
25
+ export interface UpdateFormSetRequest {
26
+ name?: string;
27
+ description?: string;
28
+ forms?: FormReference[];
29
+ enabled?: boolean;
30
+ status?: EntityStatus;
31
+ payload?: Record<string, unknown>;
32
+ }
33
+ export interface ListFormSetsParams {
34
+ page?: number;
35
+ perPage?: number;
36
+ status?: EntityStatus;
37
+ search?: string;
38
+ sortBy?: string;
39
+ sortOrder?: 'asc' | 'desc';
40
+ }
41
+ //# sourceMappingURL=form-set.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-set.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/form-set.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEtE,MAAM,WAAW,OAAQ,SAAQ,YAAY;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,aAAa,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,aAAa,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAC5B"}
@@ -0,0 +1,35 @@
1
+ import type { IdentityCore, EntityStatus } from '@23blocks/contracts';
2
+ export interface Form extends IdentityCore {
3
+ code: string;
4
+ name: string;
5
+ description?: string;
6
+ formType?: string;
7
+ status: EntityStatus;
8
+ enabled: boolean;
9
+ payload?: Record<string, unknown>;
10
+ }
11
+ export interface CreateFormRequest {
12
+ code: string;
13
+ name: string;
14
+ description?: string;
15
+ formType?: string;
16
+ payload?: Record<string, unknown>;
17
+ }
18
+ export interface UpdateFormRequest {
19
+ name?: string;
20
+ description?: string;
21
+ formType?: string;
22
+ enabled?: boolean;
23
+ status?: EntityStatus;
24
+ payload?: Record<string, unknown>;
25
+ }
26
+ export interface ListFormsParams {
27
+ page?: number;
28
+ perPage?: number;
29
+ status?: EntityStatus;
30
+ formType?: string;
31
+ search?: string;
32
+ sortBy?: string;
33
+ sortOrder?: 'asc' | 'desc';
34
+ }
35
+ //# sourceMappingURL=form.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/form.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEtE,MAAM,WAAW,IAAK,SAAQ,YAAY;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAC5B"}
@@ -2,5 +2,4 @@ export * from './form';
2
2
  export * from './form-schema';
3
3
  export * from './form-instance';
4
4
  export * from './form-set';
5
-
6
- //# sourceMappingURL=index.js.map
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@23blocks/block-forms",
3
- "version": "1.0.2",
3
+ "version": "1.0.4",
4
4
  "description": "Forms block for 23blocks SDK - dynamic forms, schemas, submissions, and form management",
5
5
  "license": "MIT",
6
6
  "author": "23blocks <hello@23blocks.com>",
@@ -23,15 +23,15 @@
23
23
  "json-schema"
24
24
  ],
25
25
  "type": "module",
26
- "main": "./dist/index.js",
27
- "module": "./dist/index.js",
26
+ "main": "./dist/index.esm.js",
27
+ "module": "./dist/index.esm.js",
28
28
  "types": "./dist/index.d.ts",
29
29
  "exports": {
30
30
  "./package.json": "./package.json",
31
31
  ".": {
32
32
  "types": "./dist/index.d.ts",
33
- "import": "./dist/index.js",
34
- "default": "./dist/index.js"
33
+ "import": "./dist/index.esm.js",
34
+ "default": "./dist/index.esm.js"
35
35
  }
36
36
  },
37
37
  "files": [
@@ -42,7 +42,7 @@
42
42
  "sourceRoot": "packages/block-forms/src",
43
43
  "targets": {
44
44
  "build": {
45
- "executor": "@nx/js:swc",
45
+ "executor": "@nx/rollup:rollup",
46
46
  "outputs": [
47
47
  "{options.outputPath}"
48
48
  ],
@@ -50,8 +50,10 @@
50
50
  "outputPath": "packages/block-forms/dist",
51
51
  "main": "packages/block-forms/src/index.ts",
52
52
  "tsConfig": "packages/block-forms/tsconfig.lib.json",
53
- "skipTypeCheck": true,
54
- "stripLeadingPaths": true
53
+ "compiler": "swc",
54
+ "format": [
55
+ "esm"
56
+ ]
55
57
  }
56
58
  }
57
59
  }
package/dist/index.js DELETED
@@ -1,7 +0,0 @@
1
- // Block factory and metadata
2
- export { createFormsBlock, formsBlockMetadata } from './lib/forms.block';
3
- export { createFormsService, createFormSchemasService, createFormInstancesService, createFormSetsService } from './lib/services';
4
- // Mappers (for advanced use cases)
5
- export { formMapper, formSchemaMapper, formInstanceMapper, formSetMapper } from './lib/mappers';
6
-
7
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/index.ts"],"sourcesContent":["// Block factory and metadata\nexport { createFormsBlock, formsBlockMetadata } from './lib/forms.block';\nexport type { FormsBlock, FormsBlockConfig } from './lib/forms.block';\n\n// Types\nexport type {\n // Form types\n Form,\n CreateFormRequest,\n UpdateFormRequest,\n ListFormsParams,\n // Form Schema types\n FormSchema,\n CreateFormSchemaRequest,\n UpdateFormSchemaRequest,\n ListFormSchemasParams,\n // Form Instance types\n FormInstance,\n CreateFormInstanceRequest,\n UpdateFormInstanceRequest,\n SubmitFormInstanceRequest,\n ListFormInstancesParams,\n // Form Set types\n FormSet,\n FormReference,\n CreateFormSetRequest,\n UpdateFormSetRequest,\n ListFormSetsParams,\n} from './lib/types';\n\n// Services\nexport type {\n FormsService,\n FormSchemasService,\n FormInstancesService,\n FormSetsService,\n} from './lib/services';\n\nexport {\n createFormsService,\n createFormSchemasService,\n createFormInstancesService,\n createFormSetsService,\n} from './lib/services';\n\n// Mappers (for advanced use cases)\nexport {\n formMapper,\n formSchemaMapper,\n formInstanceMapper,\n formSetMapper,\n} from './lib/mappers';\n"],"names":["createFormsBlock","formsBlockMetadata","createFormsService","createFormSchemasService","createFormInstancesService","createFormSetsService","formMapper","formSchemaMapper","formInstanceMapper","formSetMapper"],"rangeMappings":";;;;","mappings":"AAAA,6BAA6B;AAC7B,SAASA,gBAAgB,EAAEC,kBAAkB,QAAQ,oBAAoB;AAqCzE,SACEC,kBAAkB,EAClBC,wBAAwB,EACxBC,0BAA0B,EAC1BC,qBAAqB,QAChB,iBAAiB;AAExB,mCAAmC;AACnC,SACEC,UAAU,EACVC,gBAAgB,EAChBC,kBAAkB,EAClBC,aAAa,QACR,gBAAgB"}
@@ -1,22 +0,0 @@
1
- import { createFormsService, createFormSchemasService, createFormInstancesService, createFormSetsService } from './services';
2
- export function createFormsBlock(transport, config) {
3
- return {
4
- forms: createFormsService(transport, config),
5
- schemas: createFormSchemasService(transport, config),
6
- instances: createFormInstancesService(transport, config),
7
- sets: createFormSetsService(transport, config)
8
- };
9
- }
10
- export const formsBlockMetadata = {
11
- name: 'forms',
12
- version: '0.1.0',
13
- description: 'Dynamic forms, schemas, submissions, and form management',
14
- resourceTypes: [
15
- 'Form',
16
- 'FormSchema',
17
- 'FormInstance',
18
- 'FormSet'
19
- ]
20
- };
21
-
22
- //# sourceMappingURL=forms.block.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/forms.block.ts"],"sourcesContent":["import type { Transport, BlockConfig, BlockMetadata } from '@23blocks/contracts';\nimport {\n createFormsService,\n createFormSchemasService,\n createFormInstancesService,\n createFormSetsService,\n type FormsService,\n type FormSchemasService,\n type FormInstancesService,\n type FormSetsService,\n} from './services';\n\nexport interface FormsBlockConfig extends BlockConfig {\n appId: string;\n tenantId?: string;\n}\n\nexport interface FormsBlock {\n forms: FormsService;\n schemas: FormSchemasService;\n instances: FormInstancesService;\n sets: FormSetsService;\n}\n\nexport function createFormsBlock(\n transport: Transport,\n config: FormsBlockConfig\n): FormsBlock {\n return {\n forms: createFormsService(transport, config),\n schemas: createFormSchemasService(transport, config),\n instances: createFormInstancesService(transport, config),\n sets: createFormSetsService(transport, config),\n };\n}\n\nexport const formsBlockMetadata: BlockMetadata = {\n name: 'forms',\n version: '0.1.0',\n description: 'Dynamic forms, schemas, submissions, and form management',\n resourceTypes: [\n 'Form',\n 'FormSchema',\n 'FormInstance',\n 'FormSet',\n ],\n};\n"],"names":["createFormsService","createFormSchemasService","createFormInstancesService","createFormSetsService","createFormsBlock","transport","config","forms","schemas","instances","sets","formsBlockMetadata","name","version","description","resourceTypes"],"rangeMappings":";;;;;;;;;;;;;;;;;;;","mappings":"AACA,SACEA,kBAAkB,EAClBC,wBAAwB,EACxBC,0BAA0B,EAC1BC,qBAAqB,QAKhB,aAAa;AAcpB,OAAO,SAASC,iBACdC,SAAoB,EACpBC,MAAwB;IAExB,OAAO;QACLC,OAAOP,mBAAmBK,WAAWC;QACrCE,SAASP,yBAAyBI,WAAWC;QAC7CG,WAAWP,2BAA2BG,WAAWC;QACjDI,MAAMP,sBAAsBE,WAAWC;IACzC;AACF;AAEA,OAAO,MAAMK,qBAAoC;IAC/CC,MAAM;IACNC,SAAS;IACTC,aAAa;IACbC,eAAe;QACb;QACA;QACA;QACA;KACD;AACH,EAAE"}
@@ -1,20 +0,0 @@
1
- import { parseString, parseDate, parseBoolean, parseNumber, parseStatus } from './utils';
2
- export const formInstanceMapper = {
3
- type: 'FormInstance',
4
- map: (resource)=>({
5
- id: resource.id,
6
- uniqueId: parseString(resource.attributes['unique_id']) || resource.id,
7
- createdAt: parseDate(resource.attributes['created_at']) || new Date(),
8
- updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),
9
- formSchemaUniqueId: parseString(resource.attributes['form_schema_unique_id']) || '',
10
- formSchemaVersion: parseNumber(resource.attributes['form_schema_version']),
11
- userUniqueId: parseString(resource.attributes['user_unique_id']),
12
- data: resource.attributes['data'] || {},
13
- status: parseStatus(resource.attributes['status']),
14
- enabled: parseBoolean(resource.attributes['enabled']),
15
- submittedAt: parseDate(resource.attributes['submitted_at']),
16
- payload: resource.attributes['payload']
17
- })
18
- };
19
-
20
- //# sourceMappingURL=form-instance.mapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/lib/mappers/form-instance.mapper.ts"],"sourcesContent":["import type { ResourceMapper } from '@23blocks/jsonapi-codec';\nimport type { FormInstance } from '../types/form-instance';\nimport { parseString, parseDate, parseBoolean, parseNumber, parseStatus } from './utils';\n\nexport const formInstanceMapper: ResourceMapper<FormInstance> = {\n type: 'FormInstance',\n map: (resource) => ({\n id: resource.id,\n uniqueId: parseString(resource.attributes['unique_id']) || resource.id,\n createdAt: parseDate(resource.attributes['created_at']) || new Date(),\n updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),\n\n formSchemaUniqueId: parseString(resource.attributes['form_schema_unique_id']) || '',\n formSchemaVersion: parseNumber(resource.attributes['form_schema_version']),\n userUniqueId: parseString(resource.attributes['user_unique_id']),\n data: (resource.attributes['data'] as Record<string, unknown>) || {},\n status: parseStatus(resource.attributes['status']),\n enabled: parseBoolean(resource.attributes['enabled']),\n submittedAt: parseDate(resource.attributes['submitted_at']),\n payload: resource.attributes['payload'] as Record<string, unknown> | undefined,\n }),\n};\n"],"names":["parseString","parseDate","parseBoolean","parseNumber","parseStatus","formInstanceMapper","type","map","resource","id","uniqueId","attributes","createdAt","Date","updatedAt","formSchemaUniqueId","formSchemaVersion","userUniqueId","data","status","enabled","submittedAt","payload"],"rangeMappings":";;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,WAAW,EAAEC,SAAS,EAAEC,YAAY,EAAEC,WAAW,EAAEC,WAAW,QAAQ,UAAU;AAEzF,OAAO,MAAMC,qBAAmD;IAC9DC,MAAM;IACNC,KAAK,CAACC,WAAc,CAAA;YAClBC,IAAID,SAASC,EAAE;YACfC,UAAUV,YAAYQ,SAASG,UAAU,CAAC,YAAY,KAAKH,SAASC,EAAE;YACtEG,WAAWX,UAAUO,SAASG,UAAU,CAAC,aAAa,KAAK,IAAIE;YAC/DC,WAAWb,UAAUO,SAASG,UAAU,CAAC,aAAa,KAAK,IAAIE;YAE/DE,oBAAoBf,YAAYQ,SAASG,UAAU,CAAC,wBAAwB,KAAK;YACjFK,mBAAmBb,YAAYK,SAASG,UAAU,CAAC,sBAAsB;YACzEM,cAAcjB,YAAYQ,SAASG,UAAU,CAAC,iBAAiB;YAC/DO,MAAM,AAACV,SAASG,UAAU,CAAC,OAAO,IAAgC,CAAC;YACnEQ,QAAQf,YAAYI,SAASG,UAAU,CAAC,SAAS;YACjDS,SAASlB,aAAaM,SAASG,UAAU,CAAC,UAAU;YACpDU,aAAapB,UAAUO,SAASG,UAAU,CAAC,eAAe;YAC1DW,SAASd,SAASG,UAAU,CAAC,UAAU;QACzC,CAAA;AACF,EAAE"}
@@ -1,22 +0,0 @@
1
- import { parseString, parseDate, parseBoolean, parseNumber, parseStatus } from './utils';
2
- export const formSchemaMapper = {
3
- type: 'FormSchema',
4
- map: (resource)=>({
5
- id: resource.id,
6
- uniqueId: parseString(resource.attributes['unique_id']) || resource.id,
7
- createdAt: parseDate(resource.attributes['created_at']) || new Date(),
8
- updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),
9
- formUniqueId: parseString(resource.attributes['form_unique_id']) || '',
10
- code: parseString(resource.attributes['code']) || '',
11
- name: parseString(resource.attributes['name']) || '',
12
- description: parseString(resource.attributes['description']),
13
- version: parseNumber(resource.attributes['version']),
14
- schema: resource.attributes['schema'] || {},
15
- uiSchema: resource.attributes['ui_schema'],
16
- status: parseStatus(resource.attributes['status']),
17
- enabled: parseBoolean(resource.attributes['enabled']),
18
- payload: resource.attributes['payload']
19
- })
20
- };
21
-
22
- //# sourceMappingURL=form-schema.mapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/lib/mappers/form-schema.mapper.ts"],"sourcesContent":["import type { ResourceMapper } from '@23blocks/jsonapi-codec';\nimport type { FormSchema } from '../types/form-schema';\nimport { parseString, parseDate, parseBoolean, parseNumber, parseStatus } from './utils';\n\nexport const formSchemaMapper: ResourceMapper<FormSchema> = {\n type: 'FormSchema',\n map: (resource) => ({\n id: resource.id,\n uniqueId: parseString(resource.attributes['unique_id']) || resource.id,\n createdAt: parseDate(resource.attributes['created_at']) || new Date(),\n updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),\n\n formUniqueId: parseString(resource.attributes['form_unique_id']) || '',\n code: parseString(resource.attributes['code']) || '',\n name: parseString(resource.attributes['name']) || '',\n description: parseString(resource.attributes['description']),\n version: parseNumber(resource.attributes['version']),\n schema: (resource.attributes['schema'] as Record<string, unknown>) || {},\n uiSchema: resource.attributes['ui_schema'] as Record<string, unknown> | undefined,\n status: parseStatus(resource.attributes['status']),\n enabled: parseBoolean(resource.attributes['enabled']),\n payload: resource.attributes['payload'] as Record<string, unknown> | undefined,\n }),\n};\n"],"names":["parseString","parseDate","parseBoolean","parseNumber","parseStatus","formSchemaMapper","type","map","resource","id","uniqueId","attributes","createdAt","Date","updatedAt","formUniqueId","code","name","description","version","schema","uiSchema","status","enabled","payload"],"rangeMappings":";;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,WAAW,EAAEC,SAAS,EAAEC,YAAY,EAAEC,WAAW,EAAEC,WAAW,QAAQ,UAAU;AAEzF,OAAO,MAAMC,mBAA+C;IAC1DC,MAAM;IACNC,KAAK,CAACC,WAAc,CAAA;YAClBC,IAAID,SAASC,EAAE;YACfC,UAAUV,YAAYQ,SAASG,UAAU,CAAC,YAAY,KAAKH,SAASC,EAAE;YACtEG,WAAWX,UAAUO,SAASG,UAAU,CAAC,aAAa,KAAK,IAAIE;YAC/DC,WAAWb,UAAUO,SAASG,UAAU,CAAC,aAAa,KAAK,IAAIE;YAE/DE,cAAcf,YAAYQ,SAASG,UAAU,CAAC,iBAAiB,KAAK;YACpEK,MAAMhB,YAAYQ,SAASG,UAAU,CAAC,OAAO,KAAK;YAClDM,MAAMjB,YAAYQ,SAASG,UAAU,CAAC,OAAO,KAAK;YAClDO,aAAalB,YAAYQ,SAASG,UAAU,CAAC,cAAc;YAC3DQ,SAAShB,YAAYK,SAASG,UAAU,CAAC,UAAU;YACnDS,QAAQ,AAACZ,SAASG,UAAU,CAAC,SAAS,IAAgC,CAAC;YACvEU,UAAUb,SAASG,UAAU,CAAC,YAAY;YAC1CW,QAAQlB,YAAYI,SAASG,UAAU,CAAC,SAAS;YACjDY,SAASrB,aAAaM,SAASG,UAAU,CAAC,UAAU;YACpDa,SAAShB,SAASG,UAAU,CAAC,UAAU;QACzC,CAAA;AACF,EAAE"}
@@ -1,19 +0,0 @@
1
- import { parseString, parseDate, parseBoolean, parseStatus } from './utils';
2
- export const formSetMapper = {
3
- type: 'FormSet',
4
- map: (resource)=>({
5
- id: resource.id,
6
- uniqueId: parseString(resource.attributes['unique_id']) || resource.id,
7
- createdAt: parseDate(resource.attributes['created_at']) || new Date(),
8
- updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),
9
- code: parseString(resource.attributes['code']) || '',
10
- name: parseString(resource.attributes['name']) || '',
11
- description: parseString(resource.attributes['description']),
12
- forms: resource.attributes['forms'] || [],
13
- status: parseStatus(resource.attributes['status']),
14
- enabled: parseBoolean(resource.attributes['enabled']),
15
- payload: resource.attributes['payload']
16
- })
17
- };
18
-
19
- //# sourceMappingURL=form-set.mapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/lib/mappers/form-set.mapper.ts"],"sourcesContent":["import type { ResourceMapper } from '@23blocks/jsonapi-codec';\nimport type { FormSet, FormReference } from '../types/form-set';\nimport { parseString, parseDate, parseBoolean, parseStatus } from './utils';\n\nexport const formSetMapper: ResourceMapper<FormSet> = {\n type: 'FormSet',\n map: (resource) => ({\n id: resource.id,\n uniqueId: parseString(resource.attributes['unique_id']) || resource.id,\n createdAt: parseDate(resource.attributes['created_at']) || new Date(),\n updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),\n\n code: parseString(resource.attributes['code']) || '',\n name: parseString(resource.attributes['name']) || '',\n description: parseString(resource.attributes['description']),\n forms: (resource.attributes['forms'] as FormReference[]) || [],\n status: parseStatus(resource.attributes['status']),\n enabled: parseBoolean(resource.attributes['enabled']),\n payload: resource.attributes['payload'] as Record<string, unknown> | undefined,\n }),\n};\n"],"names":["parseString","parseDate","parseBoolean","parseStatus","formSetMapper","type","map","resource","id","uniqueId","attributes","createdAt","Date","updatedAt","code","name","description","forms","status","enabled","payload"],"rangeMappings":";;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,WAAW,EAAEC,SAAS,EAAEC,YAAY,EAAEC,WAAW,QAAQ,UAAU;AAE5E,OAAO,MAAMC,gBAAyC;IACpDC,MAAM;IACNC,KAAK,CAACC,WAAc,CAAA;YAClBC,IAAID,SAASC,EAAE;YACfC,UAAUT,YAAYO,SAASG,UAAU,CAAC,YAAY,KAAKH,SAASC,EAAE;YACtEG,WAAWV,UAAUM,SAASG,UAAU,CAAC,aAAa,KAAK,IAAIE;YAC/DC,WAAWZ,UAAUM,SAASG,UAAU,CAAC,aAAa,KAAK,IAAIE;YAE/DE,MAAMd,YAAYO,SAASG,UAAU,CAAC,OAAO,KAAK;YAClDK,MAAMf,YAAYO,SAASG,UAAU,CAAC,OAAO,KAAK;YAClDM,aAAahB,YAAYO,SAASG,UAAU,CAAC,cAAc;YAC3DO,OAAO,AAACV,SAASG,UAAU,CAAC,QAAQ,IAAwB,EAAE;YAC9DQ,QAAQf,YAAYI,SAASG,UAAU,CAAC,SAAS;YACjDS,SAASjB,aAAaK,SAASG,UAAU,CAAC,UAAU;YACpDU,SAASb,SAASG,UAAU,CAAC,UAAU;QACzC,CAAA;AACF,EAAE"}
@@ -1,19 +0,0 @@
1
- import { parseString, parseDate, parseBoolean, parseStatus } from './utils';
2
- export const formMapper = {
3
- type: 'Form',
4
- map: (resource)=>({
5
- id: resource.id,
6
- uniqueId: parseString(resource.attributes['unique_id']) || resource.id,
7
- createdAt: parseDate(resource.attributes['created_at']) || new Date(),
8
- updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),
9
- code: parseString(resource.attributes['code']) || '',
10
- name: parseString(resource.attributes['name']) || '',
11
- description: parseString(resource.attributes['description']),
12
- formType: parseString(resource.attributes['form_type']),
13
- status: parseStatus(resource.attributes['status']),
14
- enabled: parseBoolean(resource.attributes['enabled']),
15
- payload: resource.attributes['payload']
16
- })
17
- };
18
-
19
- //# sourceMappingURL=form.mapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/lib/mappers/form.mapper.ts"],"sourcesContent":["import type { ResourceMapper } from '@23blocks/jsonapi-codec';\nimport type { Form } from '../types/form';\nimport { parseString, parseDate, parseBoolean, parseStatus } from './utils';\n\nexport const formMapper: ResourceMapper<Form> = {\n type: 'Form',\n map: (resource) => ({\n id: resource.id,\n uniqueId: parseString(resource.attributes['unique_id']) || resource.id,\n createdAt: parseDate(resource.attributes['created_at']) || new Date(),\n updatedAt: parseDate(resource.attributes['updated_at']) || new Date(),\n\n code: parseString(resource.attributes['code']) || '',\n name: parseString(resource.attributes['name']) || '',\n description: parseString(resource.attributes['description']),\n formType: parseString(resource.attributes['form_type']),\n status: parseStatus(resource.attributes['status']),\n enabled: parseBoolean(resource.attributes['enabled']),\n payload: resource.attributes['payload'] as Record<string, unknown> | undefined,\n }),\n};\n"],"names":["parseString","parseDate","parseBoolean","parseStatus","formMapper","type","map","resource","id","uniqueId","attributes","createdAt","Date","updatedAt","code","name","description","formType","status","enabled","payload"],"rangeMappings":";;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,WAAW,EAAEC,SAAS,EAAEC,YAAY,EAAEC,WAAW,QAAQ,UAAU;AAE5E,OAAO,MAAMC,aAAmC;IAC9CC,MAAM;IACNC,KAAK,CAACC,WAAc,CAAA;YAClBC,IAAID,SAASC,EAAE;YACfC,UAAUT,YAAYO,SAASG,UAAU,CAAC,YAAY,KAAKH,SAASC,EAAE;YACtEG,WAAWV,UAAUM,SAASG,UAAU,CAAC,aAAa,KAAK,IAAIE;YAC/DC,WAAWZ,UAAUM,SAASG,UAAU,CAAC,aAAa,KAAK,IAAIE;YAE/DE,MAAMd,YAAYO,SAASG,UAAU,CAAC,OAAO,KAAK;YAClDK,MAAMf,YAAYO,SAASG,UAAU,CAAC,OAAO,KAAK;YAClDM,aAAahB,YAAYO,SAASG,UAAU,CAAC,cAAc;YAC3DO,UAAUjB,YAAYO,SAASG,UAAU,CAAC,YAAY;YACtDQ,QAAQf,YAAYI,SAASG,UAAU,CAAC,SAAS;YACjDS,SAASjB,aAAaK,SAASG,UAAU,CAAC,UAAU;YACpDU,SAASb,SAASG,UAAU,CAAC,UAAU;QACzC,CAAA;AACF,EAAE"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/lib/mappers/index.ts"],"sourcesContent":["export * from './form.mapper';\nexport * from './form-schema.mapper';\nexport * from './form-instance.mapper';\nexport * from './form-set.mapper';\nexport * from './utils';\n"],"names":[],"rangeMappings":";;;;","mappings":"AAAA,cAAc,gBAAgB;AAC9B,cAAc,uBAAuB;AACrC,cAAc,yBAAyB;AACvC,cAAc,oBAAoB;AAClC,cAAc,UAAU"}
@@ -1,75 +0,0 @@
1
- /**
2
- * Parse a string value, returning undefined for empty/undefined
3
- */ export function parseString(value) {
4
- if (value === null || value === undefined) {
5
- return undefined;
6
- }
7
- const str = String(value);
8
- return str.length > 0 ? str : undefined;
9
- }
10
- /**
11
- * Parse a date value
12
- */ export function parseDate(value) {
13
- if (value === null || value === undefined) {
14
- return undefined;
15
- }
16
- if (value instanceof Date) {
17
- return value;
18
- }
19
- if (typeof value === 'string' || typeof value === 'number') {
20
- const date = new Date(value);
21
- return isNaN(date.getTime()) ? undefined : date;
22
- }
23
- return undefined;
24
- }
25
- /**
26
- * Parse a boolean value
27
- */ export function parseBoolean(value) {
28
- if (typeof value === 'boolean') {
29
- return value;
30
- }
31
- if (value === 'true' || value === '1' || value === 1) {
32
- return true;
33
- }
34
- return false;
35
- }
36
- /**
37
- * Parse an array of strings
38
- */ export function parseStringArray(value) {
39
- if (value === null || value === undefined) {
40
- return undefined;
41
- }
42
- if (Array.isArray(value)) {
43
- return value.map(String);
44
- }
45
- return undefined;
46
- }
47
- /**
48
- * Parse a number value
49
- */ export function parseNumber(value) {
50
- if (value === null || value === undefined) {
51
- return 0;
52
- }
53
- const num = Number(value);
54
- return isNaN(num) ? 0 : num;
55
- }
56
- /**
57
- * Parse an optional number value
58
- */ export function parseOptionalNumber(value) {
59
- if (value === null || value === undefined) {
60
- return undefined;
61
- }
62
- const num = Number(value);
63
- return isNaN(num) ? undefined : num;
64
- }
65
- /**
66
- * Parse entity status
67
- */ export function parseStatus(value) {
68
- const status = parseString(value);
69
- if (status === 'active' || status === 'inactive' || status === 'pending' || status === 'archived' || status === 'deleted') {
70
- return status;
71
- }
72
- return 'active';
73
- }
74
-
75
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/lib/mappers/utils.ts"],"sourcesContent":["/**\n * Parse a string value, returning undefined for empty/undefined\n */\nexport function parseString(value: unknown): string | undefined {\n if (value === null || value === undefined) {\n return undefined;\n }\n const str = String(value);\n return str.length > 0 ? str : undefined;\n}\n\n/**\n * Parse a date value\n */\nexport function parseDate(value: unknown): Date | undefined {\n if (value === null || value === undefined) {\n return undefined;\n }\n\n if (value instanceof Date) {\n return value;\n }\n\n if (typeof value === 'string' || typeof value === 'number') {\n const date = new Date(value);\n return isNaN(date.getTime()) ? undefined : date;\n }\n\n return undefined;\n}\n\n/**\n * Parse a boolean value\n */\nexport function parseBoolean(value: unknown): boolean {\n if (typeof value === 'boolean') {\n return value;\n }\n if (value === 'true' || value === '1' || value === 1) {\n return true;\n }\n return false;\n}\n\n/**\n * Parse an array of strings\n */\nexport function parseStringArray(value: unknown): string[] | undefined {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (Array.isArray(value)) {\n return value.map(String);\n }\n return undefined;\n}\n\n/**\n * Parse a number value\n */\nexport function parseNumber(value: unknown): number {\n if (value === null || value === undefined) {\n return 0;\n }\n const num = Number(value);\n return isNaN(num) ? 0 : num;\n}\n\n/**\n * Parse an optional number value\n */\nexport function parseOptionalNumber(value: unknown): number | undefined {\n if (value === null || value === undefined) {\n return undefined;\n }\n const num = Number(value);\n return isNaN(num) ? undefined : num;\n}\n\n/**\n * Parse entity status\n */\nexport function parseStatus(value: unknown): 'active' | 'inactive' | 'pending' | 'archived' | 'deleted' {\n const status = parseString(value);\n if (status === 'active' || status === 'inactive' || status === 'pending' || status === 'archived' || status === 'deleted') {\n return status;\n }\n return 'active';\n}\n"],"names":["parseString","value","undefined","str","String","length","parseDate","Date","date","isNaN","getTime","parseBoolean","parseStringArray","Array","isArray","map","parseNumber","num","Number","parseOptionalNumber","parseStatus","status"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;;CAEC,GACD,OAAO,SAASA,YAAYC,KAAc;IACxC,IAAIA,UAAU,QAAQA,UAAUC,WAAW;QACzC,OAAOA;IACT;IACA,MAAMC,MAAMC,OAAOH;IACnB,OAAOE,IAAIE,MAAM,GAAG,IAAIF,MAAMD;AAChC;AAEA;;CAEC,GACD,OAAO,SAASI,UAAUL,KAAc;IACtC,IAAIA,UAAU,QAAQA,UAAUC,WAAW;QACzC,OAAOA;IACT;IAEA,IAAID,iBAAiBM,MAAM;QACzB,OAAON;IACT;IAEA,IAAI,OAAOA,UAAU,YAAY,OAAOA,UAAU,UAAU;QAC1D,MAAMO,OAAO,IAAID,KAAKN;QACtB,OAAOQ,MAAMD,KAAKE,OAAO,MAAMR,YAAYM;IAC7C;IAEA,OAAON;AACT;AAEA;;CAEC,GACD,OAAO,SAASS,aAAaV,KAAc;IACzC,IAAI,OAAOA,UAAU,WAAW;QAC9B,OAAOA;IACT;IACA,IAAIA,UAAU,UAAUA,UAAU,OAAOA,UAAU,GAAG;QACpD,OAAO;IACT;IACA,OAAO;AACT;AAEA;;CAEC,GACD,OAAO,SAASW,iBAAiBX,KAAc;IAC7C,IAAIA,UAAU,QAAQA,UAAUC,WAAW;QACzC,OAAOA;IACT;IACA,IAAIW,MAAMC,OAAO,CAACb,QAAQ;QACxB,OAAOA,MAAMc,GAAG,CAACX;IACnB;IACA,OAAOF;AACT;AAEA;;CAEC,GACD,OAAO,SAASc,YAAYf,KAAc;IACxC,IAAIA,UAAU,QAAQA,UAAUC,WAAW;QACzC,OAAO;IACT;IACA,MAAMe,MAAMC,OAAOjB;IACnB,OAAOQ,MAAMQ,OAAO,IAAIA;AAC1B;AAEA;;CAEC,GACD,OAAO,SAASE,oBAAoBlB,KAAc;IAChD,IAAIA,UAAU,QAAQA,UAAUC,WAAW;QACzC,OAAOA;IACT;IACA,MAAMe,MAAMC,OAAOjB;IACnB,OAAOQ,MAAMQ,OAAOf,YAAYe;AAClC;AAEA;;CAEC,GACD,OAAO,SAASG,YAAYnB,KAAc;IACxC,MAAMoB,SAASrB,YAAYC;IAC3B,IAAIoB,WAAW,YAAYA,WAAW,cAAcA,WAAW,aAAaA,WAAW,cAAcA,WAAW,WAAW;QACzH,OAAOA;IACT;IACA,OAAO;AACT"}
@@ -1,99 +0,0 @@
1
- import { decodeOne, decodePageResult } from '@23blocks/jsonapi-codec';
2
- import { formInstanceMapper } from '../mappers/form-instance.mapper';
3
- export function createFormInstancesService(transport, _config) {
4
- return {
5
- async list (params) {
6
- const queryParams = {};
7
- if (params == null ? void 0 : params.page) queryParams['page'] = String(params.page);
8
- if (params == null ? void 0 : params.perPage) queryParams['records'] = String(params.perPage);
9
- if (params == null ? void 0 : params.formSchemaUniqueId) queryParams['form_schema_unique_id'] = params.formSchemaUniqueId;
10
- if (params == null ? void 0 : params.userUniqueId) queryParams['user_unique_id'] = params.userUniqueId;
11
- if (params == null ? void 0 : params.status) queryParams['status'] = params.status;
12
- if (params == null ? void 0 : params.sortBy) queryParams['sort'] = params.sortOrder === 'desc' ? `-${params.sortBy}` : params.sortBy;
13
- const response = await transport.get('/form_instances', {
14
- params: queryParams
15
- });
16
- return decodePageResult(response, formInstanceMapper);
17
- },
18
- async get (uniqueId) {
19
- const response = await transport.get(`/form_instances/${uniqueId}`);
20
- return decodeOne(response, formInstanceMapper);
21
- },
22
- async create (data) {
23
- const response = await transport.post('/form_instances', {
24
- data: {
25
- type: 'FormInstance',
26
- attributes: {
27
- form_schema_unique_id: data.formSchemaUniqueId,
28
- form_schema_version: data.formSchemaVersion,
29
- user_unique_id: data.userUniqueId,
30
- data: data.data,
31
- payload: data.payload
32
- }
33
- }
34
- });
35
- return decodeOne(response, formInstanceMapper);
36
- },
37
- async update (uniqueId, data) {
38
- const response = await transport.put(`/form_instances/${uniqueId}`, {
39
- data: {
40
- type: 'FormInstance',
41
- attributes: {
42
- data: data.data,
43
- enabled: data.enabled,
44
- status: data.status,
45
- payload: data.payload
46
- }
47
- }
48
- });
49
- return decodeOne(response, formInstanceMapper);
50
- },
51
- async delete (uniqueId) {
52
- await transport.delete(`/form_instances/${uniqueId}`);
53
- },
54
- async submit (data) {
55
- const response = await transport.post('/form_instances/submit', {
56
- data: {
57
- type: 'FormInstance',
58
- attributes: {
59
- form_schema_unique_id: data.formSchemaUniqueId,
60
- form_schema_version: data.formSchemaVersion,
61
- data: data.data,
62
- payload: data.payload
63
- }
64
- }
65
- });
66
- return decodeOne(response, formInstanceMapper);
67
- },
68
- async listByUser (userUniqueId, params) {
69
- const queryParams = {
70
- user_unique_id: userUniqueId
71
- };
72
- if (params == null ? void 0 : params.page) queryParams['page'] = String(params.page);
73
- if (params == null ? void 0 : params.perPage) queryParams['records'] = String(params.perPage);
74
- if (params == null ? void 0 : params.formSchemaUniqueId) queryParams['form_schema_unique_id'] = params.formSchemaUniqueId;
75
- if (params == null ? void 0 : params.status) queryParams['status'] = params.status;
76
- if (params == null ? void 0 : params.sortBy) queryParams['sort'] = params.sortOrder === 'desc' ? `-${params.sortBy}` : params.sortBy;
77
- const response = await transport.get(`/users/${userUniqueId}/form_instances`, {
78
- params: queryParams
79
- });
80
- return decodePageResult(response, formInstanceMapper);
81
- },
82
- async listBySchema (formSchemaUniqueId, params) {
83
- const queryParams = {
84
- form_schema_unique_id: formSchemaUniqueId
85
- };
86
- if (params == null ? void 0 : params.page) queryParams['page'] = String(params.page);
87
- if (params == null ? void 0 : params.perPage) queryParams['records'] = String(params.perPage);
88
- if (params == null ? void 0 : params.userUniqueId) queryParams['user_unique_id'] = params.userUniqueId;
89
- if (params == null ? void 0 : params.status) queryParams['status'] = params.status;
90
- if (params == null ? void 0 : params.sortBy) queryParams['sort'] = params.sortOrder === 'desc' ? `-${params.sortBy}` : params.sortBy;
91
- const response = await transport.get(`/form_schemas/${formSchemaUniqueId}/instances`, {
92
- params: queryParams
93
- });
94
- return decodePageResult(response, formInstanceMapper);
95
- }
96
- };
97
- }
98
-
99
- //# sourceMappingURL=form-instances.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/lib/services/form-instances.service.ts"],"sourcesContent":["import type { Transport, PageResult } from '@23blocks/contracts';\nimport { decodeOne, decodePageResult } from '@23blocks/jsonapi-codec';\nimport type {\n FormInstance,\n CreateFormInstanceRequest,\n UpdateFormInstanceRequest,\n SubmitFormInstanceRequest,\n ListFormInstancesParams,\n} from '../types/form-instance';\nimport { formInstanceMapper } from '../mappers/form-instance.mapper';\n\nexport interface FormInstancesService {\n list(params?: ListFormInstancesParams): Promise<PageResult<FormInstance>>;\n get(uniqueId: string): Promise<FormInstance>;\n create(data: CreateFormInstanceRequest): Promise<FormInstance>;\n update(uniqueId: string, data: UpdateFormInstanceRequest): Promise<FormInstance>;\n delete(uniqueId: string): Promise<void>;\n submit(data: SubmitFormInstanceRequest): Promise<FormInstance>;\n listByUser(userUniqueId: string, params?: ListFormInstancesParams): Promise<PageResult<FormInstance>>;\n listBySchema(formSchemaUniqueId: string, params?: ListFormInstancesParams): Promise<PageResult<FormInstance>>;\n}\n\nexport function createFormInstancesService(transport: Transport, _config: { appId: string }): FormInstancesService {\n return {\n async list(params?: ListFormInstancesParams): Promise<PageResult<FormInstance>> {\n const queryParams: Record<string, string> = {};\n if (params?.page) queryParams['page'] = String(params.page);\n if (params?.perPage) queryParams['records'] = String(params.perPage);\n if (params?.formSchemaUniqueId) queryParams['form_schema_unique_id'] = params.formSchemaUniqueId;\n if (params?.userUniqueId) queryParams['user_unique_id'] = params.userUniqueId;\n if (params?.status) queryParams['status'] = params.status;\n if (params?.sortBy) queryParams['sort'] = params.sortOrder === 'desc' ? `-${params.sortBy}` : params.sortBy;\n\n const response = await transport.get<unknown>('/form_instances', { params: queryParams });\n return decodePageResult(response, formInstanceMapper);\n },\n\n async get(uniqueId: string): Promise<FormInstance> {\n const response = await transport.get<unknown>(`/form_instances/${uniqueId}`);\n return decodeOne(response, formInstanceMapper);\n },\n\n async create(data: CreateFormInstanceRequest): Promise<FormInstance> {\n const response = await transport.post<unknown>('/form_instances', {\n data: {\n type: 'FormInstance',\n attributes: {\n form_schema_unique_id: data.formSchemaUniqueId,\n form_schema_version: data.formSchemaVersion,\n user_unique_id: data.userUniqueId,\n data: data.data,\n payload: data.payload,\n },\n },\n });\n return decodeOne(response, formInstanceMapper);\n },\n\n async update(uniqueId: string, data: UpdateFormInstanceRequest): Promise<FormInstance> {\n const response = await transport.put<unknown>(`/form_instances/${uniqueId}`, {\n data: {\n type: 'FormInstance',\n attributes: {\n data: data.data,\n enabled: data.enabled,\n status: data.status,\n payload: data.payload,\n },\n },\n });\n return decodeOne(response, formInstanceMapper);\n },\n\n async delete(uniqueId: string): Promise<void> {\n await transport.delete(`/form_instances/${uniqueId}`);\n },\n\n async submit(data: SubmitFormInstanceRequest): Promise<FormInstance> {\n const response = await transport.post<unknown>('/form_instances/submit', {\n data: {\n type: 'FormInstance',\n attributes: {\n form_schema_unique_id: data.formSchemaUniqueId,\n form_schema_version: data.formSchemaVersion,\n data: data.data,\n payload: data.payload,\n },\n },\n });\n return decodeOne(response, formInstanceMapper);\n },\n\n async listByUser(userUniqueId: string, params?: ListFormInstancesParams): Promise<PageResult<FormInstance>> {\n const queryParams: Record<string, string> = { user_unique_id: userUniqueId };\n if (params?.page) queryParams['page'] = String(params.page);\n if (params?.perPage) queryParams['records'] = String(params.perPage);\n if (params?.formSchemaUniqueId) queryParams['form_schema_unique_id'] = params.formSchemaUniqueId;\n if (params?.status) queryParams['status'] = params.status;\n if (params?.sortBy) queryParams['sort'] = params.sortOrder === 'desc' ? `-${params.sortBy}` : params.sortBy;\n\n const response = await transport.get<unknown>(`/users/${userUniqueId}/form_instances`, { params: queryParams });\n return decodePageResult(response, formInstanceMapper);\n },\n\n async listBySchema(formSchemaUniqueId: string, params?: ListFormInstancesParams): Promise<PageResult<FormInstance>> {\n const queryParams: Record<string, string> = { form_schema_unique_id: formSchemaUniqueId };\n if (params?.page) queryParams['page'] = String(params.page);\n if (params?.perPage) queryParams['records'] = String(params.perPage);\n if (params?.userUniqueId) queryParams['user_unique_id'] = params.userUniqueId;\n if (params?.status) queryParams['status'] = params.status;\n if (params?.sortBy) queryParams['sort'] = params.sortOrder === 'desc' ? `-${params.sortBy}` : params.sortBy;\n\n const response = await transport.get<unknown>(`/form_schemas/${formSchemaUniqueId}/instances`, { params: queryParams });\n return decodePageResult(response, formInstanceMapper);\n },\n };\n}\n"],"names":["decodeOne","decodePageResult","formInstanceMapper","createFormInstancesService","transport","_config","list","params","queryParams","page","String","perPage","formSchemaUniqueId","userUniqueId","status","sortBy","sortOrder","response","get","uniqueId","create","data","post","type","attributes","form_schema_unique_id","form_schema_version","formSchemaVersion","user_unique_id","payload","update","put","enabled","delete","submit","listByUser","listBySchema"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}