@jsonforms/core 3.1.0-alpha.1 → 3.1.0-alpha.3

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 (47) hide show
  1. package/README.md +3 -3
  2. package/lib/actions/actions.d.ts +21 -21
  3. package/lib/i18n/arrayTranslations.d.ts +24 -0
  4. package/lib/i18n/i18nUtil.d.ts +3 -0
  5. package/lib/i18n/index.d.ts +1 -0
  6. package/lib/jsonforms-core.cjs.js +436 -262
  7. package/lib/jsonforms-core.cjs.js.map +1 -1
  8. package/lib/jsonforms-core.esm.js +318 -201
  9. package/lib/jsonforms-core.esm.js.map +1 -1
  10. package/lib/util/cell.d.ts +0 -1
  11. package/lib/util/renderer.d.ts +6 -2
  12. package/lib/util/schema.d.ts +5 -0
  13. package/package.json +11 -4
  14. package/src/Helpers.ts +1 -1
  15. package/src/actions/actions.ts +52 -55
  16. package/src/configDefault.ts +1 -1
  17. package/src/generators/Generate.ts +3 -1
  18. package/src/generators/schema.ts +29 -25
  19. package/src/generators/uischema.ts +7 -6
  20. package/src/i18n/arrayTranslations.ts +54 -0
  21. package/src/i18n/i18nTypes.ts +10 -6
  22. package/src/i18n/i18nUtil.ts +64 -14
  23. package/src/i18n/index.ts +1 -0
  24. package/src/models/draft4.ts +33 -33
  25. package/src/models/uischema.ts +17 -6
  26. package/src/reducers/cells.ts +8 -7
  27. package/src/reducers/core.ts +119 -75
  28. package/src/reducers/default-data.ts +7 -7
  29. package/src/reducers/i18n.ts +21 -9
  30. package/src/reducers/reducers.ts +20 -30
  31. package/src/reducers/renderers.ts +7 -7
  32. package/src/reducers/selectors.ts +4 -5
  33. package/src/reducers/uischemas.ts +25 -24
  34. package/src/store.ts +1 -1
  35. package/src/testers/testers.ts +202 -148
  36. package/src/util/cell.ts +24 -26
  37. package/src/util/combinators.ts +5 -3
  38. package/src/util/label.ts +1 -1
  39. package/src/util/path.ts +11 -7
  40. package/src/util/renderer.ts +118 -67
  41. package/src/util/resolvers.ts +15 -13
  42. package/src/util/runtime.ts +2 -2
  43. package/src/util/schema.ts +10 -1
  44. package/src/util/type.ts +5 -3
  45. package/src/util/uischema.ts +9 -9
  46. package/src/util/util.ts +52 -52
  47. package/src/util/validator.ts +1 -1
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # JSON Forms - More Forms. Less Code
2
2
 
3
- *Complex forms in the blink of an eye*
3
+ _Complex forms in the blink of an eye_
4
4
 
5
5
  JSON Forms eliminates the tedious task of writing fully-featured forms by hand by leveraging the capabilities of JSON, JSON Schema and Javascript.
6
6
 
@@ -13,6 +13,7 @@ In order to use JSON Forms Core you need to decide which UI framework you would
13
13
  JSON Forms currently supports [React](https://github.com/eclipsesource/jsonforms/blob/master/packages/react), [Angular](https://github.com/eclipsesource/jsonforms/blob/master/packages/angular) and [Vue](https://github.com/eclipsesource/jsonforms/blob/master/packages/vue).
14
14
 
15
15
  The following seeds are available:
16
+
16
17
  - [React Seed](https://github.com/eclipsesource/jsonforms-react-seed)
17
18
  - [Angular Seed](https://github.com/eclipsesource/jsonforms-angular-seed)
18
19
  - [Vue Seed](https://github.com/eclipsesource/jsonforms-vue-seed)
@@ -44,7 +45,6 @@ For questions and discussions please use the [JSON Forms board](https://jsonform
44
45
  You can also reach us via [email](mailto:jsonforms@eclipsesource.com?subject=JSON%20Forms).
45
46
  In addition, EclipseSource also offers [professional support](https://jsonforms.io/support) for JSON Forms.
46
47
 
47
-
48
48
  ## Migration
49
49
 
50
- See our [migration guide](https://github.com/eclipsesource/jsonforms/blob/master/MIGRATION.md) when updating JSON Forms.
50
+ See our [migration guide](https://github.com/eclipsesource/jsonforms/blob/master/MIGRATION.md) when updating JSON Forms.
@@ -4,27 +4,27 @@ import type { JsonSchema, UISchemaElement } from '../models';
4
4
  import type { RankedTester } from '../testers';
5
5
  import type { UISchemaTester, ValidationMode } from '../reducers';
6
6
  import type { ErrorTranslator, Translator } from '../i18n';
7
- export declare const INIT: 'jsonforms/INIT';
8
- export declare const UPDATE_CORE: 'jsonforms/UPDATE_CORE';
9
- export declare const SET_AJV: 'jsonforms/SET_AJV';
10
- export declare const UPDATE_DATA: 'jsonforms/UPDATE';
11
- export declare const UPDATE_ERRORS: 'jsonforms/UPDATE_ERRORS';
12
- export declare const VALIDATE: 'jsonforms/VALIDATE';
13
- export declare const ADD_RENDERER: 'jsonforms/ADD_RENDERER';
14
- export declare const REMOVE_RENDERER: 'jsonforms/REMOVE_RENDERER';
15
- export declare const ADD_CELL: 'jsonforms/ADD_CELL';
16
- export declare const REMOVE_CELL: 'jsonforms/REMOVE_CELL';
17
- export declare const SET_CONFIG: 'jsonforms/SET_CONFIG';
18
- export declare const ADD_UI_SCHEMA: 'jsonforms/ADD_UI_SCHEMA';
19
- export declare const REMOVE_UI_SCHEMA: 'jsonforms/REMOVE_UI_SCHEMA';
20
- export declare const SET_SCHEMA: 'jsonforms/SET_SCHEMA';
21
- export declare const SET_UISCHEMA: 'jsonforms/SET_UISCHEMA';
22
- export declare const SET_VALIDATION_MODE: 'jsonforms/SET_VALIDATION_MODE';
23
- export declare const SET_LOCALE: 'jsonforms/SET_LOCALE';
24
- export declare const SET_TRANSLATOR: 'jsonforms/SET_TRANSLATOR';
25
- export declare const UPDATE_I18N: 'jsonforms/UPDATE_I18N';
26
- export declare const ADD_DEFAULT_DATA: 'jsonforms/ADD_DEFAULT_DATA';
27
- export declare const REMOVE_DEFAULT_DATA: 'jsonforms/REMOVE_DEFAULT_DATA';
7
+ export declare const INIT: "jsonforms/INIT";
8
+ export declare const UPDATE_CORE: "jsonforms/UPDATE_CORE";
9
+ export declare const SET_AJV: "jsonforms/SET_AJV";
10
+ export declare const UPDATE_DATA: "jsonforms/UPDATE";
11
+ export declare const UPDATE_ERRORS: "jsonforms/UPDATE_ERRORS";
12
+ export declare const VALIDATE: "jsonforms/VALIDATE";
13
+ export declare const ADD_RENDERER: "jsonforms/ADD_RENDERER";
14
+ export declare const REMOVE_RENDERER: "jsonforms/REMOVE_RENDERER";
15
+ export declare const ADD_CELL: "jsonforms/ADD_CELL";
16
+ export declare const REMOVE_CELL: "jsonforms/REMOVE_CELL";
17
+ export declare const SET_CONFIG: "jsonforms/SET_CONFIG";
18
+ export declare const ADD_UI_SCHEMA: "jsonforms/ADD_UI_SCHEMA";
19
+ export declare const REMOVE_UI_SCHEMA: "jsonforms/REMOVE_UI_SCHEMA";
20
+ export declare const SET_SCHEMA: "jsonforms/SET_SCHEMA";
21
+ export declare const SET_UISCHEMA: "jsonforms/SET_UISCHEMA";
22
+ export declare const SET_VALIDATION_MODE: "jsonforms/SET_VALIDATION_MODE";
23
+ export declare const SET_LOCALE: "jsonforms/SET_LOCALE";
24
+ export declare const SET_TRANSLATOR: "jsonforms/SET_TRANSLATOR";
25
+ export declare const UPDATE_I18N: "jsonforms/UPDATE_I18N";
26
+ export declare const ADD_DEFAULT_DATA: "jsonforms/ADD_DEFAULT_DATA";
27
+ export declare const REMOVE_DEFAULT_DATA: "jsonforms/REMOVE_DEFAULT_DATA";
28
28
  export declare type CoreActions = InitAction | UpdateCoreAction | UpdateAction | UpdateErrorsAction | SetAjvAction | SetSchemaAction | SetUISchemaAction | SetValidationModeAction;
29
29
  export interface UpdateAction {
30
30
  type: 'jsonforms/UPDATE';
@@ -0,0 +1,24 @@
1
+ export interface ArrayDefaultTranslation {
2
+ key: ArrayTranslationEnum;
3
+ default: (variable?: string) => string;
4
+ }
5
+ export declare enum ArrayTranslationEnum {
6
+ addTooltip = "addTooltip",
7
+ addAriaLabel = "addAriaLabel",
8
+ removeTooltip = "removeTooltip",
9
+ upAriaLabel = "upAriaLabel",
10
+ downAriaLabel = "downAriaLabel",
11
+ noSelection = "noSelection",
12
+ removeAriaLabel = "removeAriaLabel",
13
+ noDataMessage = "noDataMessage",
14
+ deleteDialogTitle = "deleteDialogTitle",
15
+ deleteDialogMessage = "deleteDialogMessage",
16
+ deleteDialogAccept = "deleteDialogAccept",
17
+ deleteDialogDecline = "deleteDialogDecline",
18
+ up = "up",
19
+ down = "down"
20
+ }
21
+ export declare type ArrayTranslations = {
22
+ [key in ArrayTranslationEnum]?: string;
23
+ };
24
+ export declare const arrayDefaultTranslations: ArrayDefaultTranslation[];
@@ -1,6 +1,7 @@
1
1
  import type { ErrorObject } from 'ajv';
2
2
  import { Labelable, UISchemaElement } from '../models';
3
3
  import type { i18nJsonSchema, ErrorTranslator, Translator } from './i18nTypes';
4
+ import { ArrayDefaultTranslation, ArrayTranslations } from './arrayTranslations';
4
5
  export declare const getI18nKeyPrefixBySchema: (schema: i18nJsonSchema | undefined, uischema: unknown | undefined) => string | undefined;
5
6
  /**
6
7
  * Transforms a given path to a prefix which can be used for i18n keys.
@@ -9,6 +10,7 @@ export declare const getI18nKeyPrefixBySchema: (schema: i18nJsonSchema | undefin
9
10
  export declare const transformPathToI18nPrefix: (path: string) => string;
10
11
  export declare const getI18nKeyPrefix: (schema: i18nJsonSchema | undefined, uischema: unknown | undefined, path: string | undefined) => string;
11
12
  export declare const getI18nKey: (schema: i18nJsonSchema | undefined, uischema: unknown | undefined, path: string | undefined, key: string) => string;
13
+ export declare const addI18nKeyToPrefix: (i18nKeyPrefix: string, key: string) => string;
12
14
  export declare const defaultTranslator: Translator;
13
15
  export declare const defaultErrorTranslator: ErrorTranslator;
14
16
  /**
@@ -21,3 +23,4 @@ export declare const getCombinedErrorMessage: (errors: ErrorObject[], et: ErrorT
21
23
  * This should not be used for controls as there we have additional context in the form of the JSON Schema available.
22
24
  */
23
25
  export declare const deriveLabelForUISchemaElement: (uischema: Labelable<boolean>, t: Translator) => string | undefined;
26
+ export declare const getArrayTranslations: (t: Translator, defaultTranslations: ArrayDefaultTranslation[], i18nKeyPrefix: string, label: string) => ArrayTranslations;
@@ -1,2 +1,3 @@
1
1
  export * from './i18nTypes';
2
2
  export * from './i18nUtil';
3
+ export * from './arrayTranslations';