@guillotinaweb/react-gmi 0.30.1 → 0.31.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.
@@ -1426,7 +1426,7 @@
1426
1426
 
1427
1427
  var type = props.type;
1428
1428
  var getForm = Ctx.registry.getForm;
1429
- var Form = getForm(type);
1429
+ var Form = getForm(type, undefined);
1430
1430
 
1431
1431
  var setActive = function setActive() {
1432
1432
  Ctx.cancelAction();
@@ -1595,6 +1595,11 @@
1595
1595
  state = _useState[0],
1596
1596
  setState = _useState[1];
1597
1597
 
1598
+ React.useEffect(function () {
1599
+ if (state !== checked) {
1600
+ setState(!!checked);
1601
+ }
1602
+ }, [checked]);
1598
1603
  React.useEffect(function () {
1599
1604
  if (inputRef.current) {
1600
1605
  inputRef.current.indeterminate = indeterminate;
@@ -2742,52 +2747,49 @@
2742
2747
  var cacheSchemas = {};
2743
2748
  var GuillotinaClient = /*#__PURE__*/function () {
2744
2749
  function GuillotinaClient(rest, pathContainsContainer) {
2745
- var _this = this;
2746
-
2747
2750
  this.rest = void 0;
2748
2751
  this.pathContainsContainer = void 0;
2752
+ this.rest = rest;
2753
+ this.pathContainsContainer = pathContainsContainer;
2754
+ }
2749
2755
 
2750
- this.getContainerFromPath = function (path) {
2751
- if (_this.pathContainsContainer) {
2752
- if (path.startsWith('/')) {
2753
- path = path.substring(1);
2754
- }
2756
+ var _proto = GuillotinaClient.prototype;
2755
2757
 
2756
- var parts = path.split('/');
2757
- return parts[0] + "/" + parts[1] + "/";
2758
+ _proto.getContainerFromPath = function getContainerFromPath(path) {
2759
+ if (this.pathContainsContainer) {
2760
+ if (path.startsWith('/')) {
2761
+ path = path.substring(1);
2758
2762
  }
2759
2763
 
2760
- return '';
2761
- };
2762
-
2763
- this.clearContainerFromPath = function (path) {
2764
- if (_this.pathContainsContainer) {
2765
- return "/" + _this.cleanPath(path);
2766
- }
2764
+ var parts = path.split('/');
2765
+ return parts[0] + "/" + parts[1] + "/";
2766
+ }
2767
2767
 
2768
- return path;
2769
- };
2768
+ return '';
2769
+ };
2770
2770
 
2771
- this.rest = rest;
2772
- this.pathContainsContainer = pathContainsContainer;
2773
- }
2771
+ _proto.clearContainerFromPath = function clearContainerFromPath(path) {
2772
+ if (this.pathContainsContainer) {
2773
+ return "/" + this.cleanPath(path);
2774
+ }
2774
2775
 
2775
- var _proto = GuillotinaClient.prototype;
2776
+ return path;
2777
+ };
2776
2778
 
2777
2779
  _proto.getContext = function getContext(path) {
2778
2780
  try {
2779
- var _this3 = this;
2781
+ var _this2 = this;
2780
2782
 
2781
2783
  switch (path) {
2782
2784
  case '/':
2783
- return Promise.resolve(_this3.rest.get(''));
2785
+ return Promise.resolve(_this2.rest.get(''));
2784
2786
 
2785
2787
  default:
2786
2788
  if (path.startsWith('/')) {
2787
2789
  path = path.substring(1);
2788
2790
  }
2789
2791
 
2790
- return Promise.resolve(_this3.rest.get(path));
2792
+ return Promise.resolve(_this2.rest.get(path));
2791
2793
  }
2792
2794
  } catch (e) {
2793
2795
  return Promise.reject(e);
@@ -2796,13 +2798,13 @@
2796
2798
 
2797
2799
  _proto.get = function get(path) {
2798
2800
  try {
2799
- var _this5 = this;
2801
+ var _this4 = this;
2800
2802
 
2801
2803
  if (path.startsWith('/')) {
2802
2804
  path = path.slice(1);
2803
2805
  }
2804
2806
 
2805
- return Promise.resolve(_this5.rest.get(path));
2807
+ return Promise.resolve(_this4.rest.get(path));
2806
2808
  } catch (e) {
2807
2809
  return Promise.reject(e);
2808
2810
  }
@@ -2879,13 +2881,15 @@
2879
2881
  width: 120
2880
2882
  };
2881
2883
  return [{
2884
+ key: 'icon',
2882
2885
  label: '',
2883
2886
  isSortable: false,
2884
- child: function child(m) {
2887
+ child: function child(_ref3) {
2888
+ var model = _ref3.model;
2885
2889
  return jsxRuntime.jsx("td", {
2886
2890
  style: smallcss,
2887
2891
  children: jsxRuntime.jsx(Icon, {
2888
- icon: m.icon
2892
+ icon: model.icon
2889
2893
  })
2890
2894
  });
2891
2895
  }
@@ -2893,13 +2897,14 @@
2893
2897
  label: 'type',
2894
2898
  key: 'type_name',
2895
2899
  isSortable: false,
2896
- child: function child(m) {
2900
+ child: function child(_ref4) {
2901
+ var model = _ref4.model;
2897
2902
  return jsxRuntime.jsx(TdLink, {
2898
2903
  style: smallcss,
2899
- model: m,
2904
+ model: model,
2900
2905
  children: jsxRuntime.jsx("span", {
2901
2906
  className: "tag",
2902
- children: m.type
2907
+ children: model.type
2903
2908
  })
2904
2909
  });
2905
2910
  }
@@ -2907,13 +2912,15 @@
2907
2912
  label: 'id/name',
2908
2913
  key: 'title',
2909
2914
  isSortable: true,
2910
- child: function child(m, _navigate, search) {
2915
+ child: function child(_ref5) {
2916
+ var model = _ref5.model,
2917
+ search = _ref5.search;
2911
2918
  return jsxRuntime.jsxs(TdLink, {
2912
- model: m,
2913
- children: [m.name, search && jsxRuntime.jsxs(React__default['default'].Fragment, {
2919
+ model: model,
2920
+ children: [model.name, search && jsxRuntime.jsxs(React__default['default'].Fragment, {
2914
2921
  children: [jsxRuntime.jsx("br", {}), jsxRuntime.jsx("span", {
2915
2922
  className: "is-size-7 tag is-light",
2916
- children: m.path
2923
+ children: model.path
2917
2924
  })]
2918
2925
  })]
2919
2926
  });
@@ -2922,22 +2929,24 @@
2922
2929
  label: 'created',
2923
2930
  key: 'creation_date',
2924
2931
  isSortable: true,
2925
- child: function child(m) {
2932
+ child: function child(_ref6) {
2933
+ var model = _ref6.model;
2926
2934
  return jsxRuntime.jsx("td", {
2927
2935
  style: mediumcss,
2928
2936
  className: "is-size-7 is-vcentered",
2929
- children: m.created
2937
+ children: model.created
2930
2938
  });
2931
2939
  }
2932
2940
  }, {
2933
2941
  label: 'modified',
2934
2942
  key: 'modification_date',
2935
2943
  isSortable: true,
2936
- child: function child(m) {
2944
+ child: function child(_ref7) {
2945
+ var model = _ref7.model;
2937
2946
  return jsxRuntime.jsx("td", {
2938
2947
  style: mediumcss,
2939
2948
  className: "is-size-7 is-vcentered",
2940
- children: m.updated
2949
+ children: model.updated
2941
2950
  });
2942
2951
  }
2943
2952
  }];
@@ -2963,21 +2972,21 @@
2963
2972
  }
2964
2973
 
2965
2974
  try {
2966
- var _this7 = this;
2975
+ var _this6 = this;
2967
2976
 
2968
2977
  if (path.startsWith('/')) {
2969
2978
  path = path.slice(1);
2970
2979
  }
2971
2980
 
2972
2981
  if (container) {
2973
- path = _this7.getContainerFromPath(path);
2982
+ path = _this6.getContainerFromPath(path);
2974
2983
  }
2975
2984
 
2976
2985
  var query = prepare ? toQueryString(params) : params;
2977
2986
  var url = path + "@search?" + query;
2978
- return Promise.resolve(_this7.rest.get(url, signal)).then(function (res) {
2987
+ return Promise.resolve(_this6.rest.get(url, signal)).then(function (res) {
2979
2988
  return Promise.resolve(res.json()).then(function (data) {
2980
- return _this7.applyCompat(data);
2989
+ return _this6.applyCompat(data);
2981
2990
  });
2982
2991
  });
2983
2992
  } catch (e) {
@@ -2987,7 +2996,7 @@
2987
2996
 
2988
2997
  _proto.canido = function canido(path, permissions) {
2989
2998
  try {
2990
- var _this9 = this;
2999
+ var _this8 = this;
2991
3000
 
2992
3001
  if (path.startsWith('/')) {
2993
3002
  path = path.slice(1);
@@ -2998,7 +3007,7 @@
2998
3007
  }
2999
3008
 
3000
3009
  var url = path + "@canido?permissions=" + permissions;
3001
- return Promise.resolve(_this9.rest.get(url));
3010
+ return Promise.resolve(_this8.rest.get(url));
3002
3011
  } catch (e) {
3003
3012
  return Promise.reject(e);
3004
3013
  }
@@ -3006,9 +3015,9 @@
3006
3015
 
3007
3016
  _proto.createObject = function createObject(path, data) {
3008
3017
  try {
3009
- var _this11 = this;
3018
+ var _this10 = this;
3010
3019
 
3011
- return Promise.resolve(_this11.rest.post(path, data));
3020
+ return Promise.resolve(_this10.rest.post(path, data));
3012
3021
  } catch (e) {
3013
3022
  return Promise.reject(e);
3014
3023
  }
@@ -3021,9 +3030,9 @@
3021
3030
 
3022
3031
  _proto.delete = function _delete(path, data) {
3023
3032
  try {
3024
- var _this13 = this;
3033
+ var _this12 = this;
3025
3034
 
3026
- return Promise.resolve(_this13.rest.delete(path, data));
3035
+ return Promise.resolve(_this12.rest.delete(path, data));
3027
3036
  } catch (e) {
3028
3037
  return Promise.reject(e);
3029
3038
  }
@@ -3031,13 +3040,13 @@
3031
3040
 
3032
3041
  _proto.create = function create(path, data) {
3033
3042
  try {
3034
- var _this15 = this;
3043
+ var _this14 = this;
3035
3044
 
3036
3045
  if (path.startsWith('/')) {
3037
3046
  path = path.substring(1);
3038
3047
  }
3039
3048
 
3040
- return Promise.resolve(_this15.rest.post(path, data));
3049
+ return Promise.resolve(_this14.rest.post(path, data));
3041
3050
  } catch (e) {
3042
3051
  return Promise.reject(e);
3043
3052
  }
@@ -3045,9 +3054,9 @@
3045
3054
 
3046
3055
  _proto.post = function post(path, data) {
3047
3056
  try {
3048
- var _this17 = this;
3057
+ var _this16 = this;
3049
3058
 
3050
- return Promise.resolve(_this17.create(path, data));
3059
+ return Promise.resolve(_this16.create(path, data));
3051
3060
  } catch (e) {
3052
3061
  return Promise.reject(e);
3053
3062
  }
@@ -3055,13 +3064,13 @@
3055
3064
 
3056
3065
  _proto.patch = function patch(path, data) {
3057
3066
  try {
3058
- var _this19 = this;
3067
+ var _this18 = this;
3059
3068
 
3060
3069
  if (path.startsWith('/')) {
3061
3070
  path = path.substring(1);
3062
3071
  }
3063
3072
 
3064
- return Promise.resolve(_this19.rest.patch(path, data));
3073
+ return Promise.resolve(_this18.rest.patch(path, data));
3065
3074
  } catch (e) {
3066
3075
  return Promise.reject(e);
3067
3076
  }
@@ -3069,13 +3078,13 @@
3069
3078
 
3070
3079
  _proto.upload = function upload(path, file) {
3071
3080
  try {
3072
- var _this21 = this;
3081
+ var _this20 = this;
3073
3082
 
3074
3083
  if (path.startsWith('/')) {
3075
3084
  path = path.substring(1);
3076
3085
  }
3077
3086
 
3078
- return Promise.resolve(_this21.rest.upload(path, file));
3087
+ return Promise.resolve(_this20.rest.upload(path, file));
3079
3088
  } catch (e) {
3080
3089
  return Promise.reject(e);
3081
3090
  }
@@ -3083,13 +3092,13 @@
3083
3092
 
3084
3093
  _proto.download = function download(path) {
3085
3094
  try {
3086
- var _this23 = this;
3095
+ var _this22 = this;
3087
3096
 
3088
3097
  if (path.startsWith('/')) {
3089
3098
  path = path.substring(1);
3090
3099
  }
3091
3100
 
3092
- return Promise.resolve(_this23.rest.get(path));
3101
+ return Promise.resolve(_this22.rest.get(path));
3093
3102
  } catch (e) {
3094
3103
  return Promise.reject(e);
3095
3104
  }
@@ -3097,7 +3106,7 @@
3097
3106
 
3098
3107
  _proto.getTypeSchema = function getTypeSchema(path, name) {
3099
3108
  try {
3100
- var _this25 = this;
3109
+ var _this24 = this;
3101
3110
 
3102
3111
  function _temp3() {
3103
3112
  return cacheSchemas[name];
@@ -3105,10 +3114,10 @@
3105
3114
 
3106
3115
  var _temp4 = function () {
3107
3116
  if (!cacheSchemas[name]) {
3108
- var url = _this25.getContainerFromPath(path); // todo: handle db case (only addable containers)
3117
+ var url = _this24.getContainerFromPath(path); // todo: handle db case (only addable containers)
3109
3118
 
3110
3119
 
3111
- return Promise.resolve(_this25.rest.get(url + "@types/" + name)).then(function (res) {
3120
+ return Promise.resolve(_this24.rest.get(url + "@types/" + name)).then(function (res) {
3112
3121
  return Promise.resolve(res.json()).then(function (_res$json) {
3113
3122
  cacheSchemas[name] = _res$json;
3114
3123
  });
@@ -3124,9 +3133,9 @@
3124
3133
 
3125
3134
  _proto.getAddons = function getAddons(path) {
3126
3135
  try {
3127
- var _this27 = this;
3136
+ var _this26 = this;
3128
3137
 
3129
- return Promise.resolve(_this27.rest.get(path + "@addons"));
3138
+ return Promise.resolve(_this26.rest.get(path + "@addons"));
3130
3139
  } catch (e) {
3131
3140
  return Promise.reject(e);
3132
3141
  }
@@ -3134,9 +3143,9 @@
3134
3143
 
3135
3144
  _proto.installAddon = function installAddon(path, key) {
3136
3145
  try {
3137
- var _this29 = this;
3146
+ var _this28 = this;
3138
3147
 
3139
- return Promise.resolve(_this29.rest.post(path + "@addons", {
3148
+ return Promise.resolve(_this28.rest.post(path + "@addons", {
3140
3149
  id: key
3141
3150
  }));
3142
3151
  } catch (e) {
@@ -3146,9 +3155,9 @@
3146
3155
 
3147
3156
  _proto.removeAddon = function removeAddon(path, key) {
3148
3157
  try {
3149
- var _this31 = this;
3158
+ var _this30 = this;
3150
3159
 
3151
- return Promise.resolve(_this31.rest.delete(path + "@addons", {
3160
+ return Promise.resolve(_this30.rest.delete(path + "@addons", {
3152
3161
  id: key
3153
3162
  }));
3154
3163
  } catch (e) {
@@ -3158,10 +3167,10 @@
3158
3167
 
3159
3168
  _proto.getGroups = function getGroups(path) {
3160
3169
  try {
3161
- var _this33 = this;
3170
+ var _this32 = this;
3162
3171
 
3163
- var endpoint = _this33.getContainerFromPath(path) + "@groups";
3164
- return Promise.resolve(_this33.rest.get(endpoint));
3172
+ var endpoint = _this32.getContainerFromPath(path) + "@groups";
3173
+ return Promise.resolve(_this32.rest.get(endpoint));
3165
3174
  } catch (e) {
3166
3175
  return Promise.reject(e);
3167
3176
  }
@@ -3169,10 +3178,10 @@
3169
3178
 
3170
3179
  _proto.getUsers = function getUsers(path) {
3171
3180
  try {
3172
- var _this35 = this;
3181
+ var _this34 = this;
3173
3182
 
3174
- var endpoint = _this35.getContainerFromPath(path) + "@users";
3175
- return Promise.resolve(_this35.rest.get(endpoint));
3183
+ var endpoint = _this34.getContainerFromPath(path) + "@users";
3184
+ return Promise.resolve(_this34.rest.get(endpoint));
3176
3185
  } catch (e) {
3177
3186
  return Promise.reject(e);
3178
3187
  }
@@ -3180,15 +3189,15 @@
3180
3189
 
3181
3190
  _proto.getPrincipals = function getPrincipals(path) {
3182
3191
  try {
3183
- var _this37 = this;
3192
+ var _this36 = this;
3184
3193
 
3185
- var groups = _this37.getGroups(path);
3194
+ var groups = _this36.getGroups(path);
3186
3195
 
3187
- var users = _this37.getUsers(path);
3196
+ var users = _this36.getUsers(path);
3188
3197
 
3189
- return Promise.resolve(Promise.all([groups, users])).then(function (_ref3) {
3190
- var responseGroups = _ref3[0],
3191
- responseUsers = _ref3[1];
3198
+ return Promise.resolve(Promise.all([groups, users])).then(function (_ref8) {
3199
+ var responseGroups = _ref8[0],
3200
+ responseUsers = _ref8[1];
3192
3201
 
3193
3202
  function _temp8() {
3194
3203
  function _temp6() {
@@ -3242,10 +3251,10 @@
3242
3251
 
3243
3252
  _proto.getRoles = function getRoles(path) {
3244
3253
  try {
3245
- var _this39 = this;
3254
+ var _this38 = this;
3246
3255
 
3247
- var endpoint = _this39.getContainerFromPath(path) + "@available-roles";
3248
- return Promise.resolve(_this39.rest.get(endpoint));
3256
+ var endpoint = _this38.getContainerFromPath(path) + "@available-roles";
3257
+ return Promise.resolve(_this38.rest.get(endpoint));
3249
3258
  } catch (e) {
3250
3259
  return Promise.reject(e);
3251
3260
  }
@@ -3253,14 +3262,14 @@
3253
3262
 
3254
3263
  _proto.getAllPermissions = function getAllPermissions(path) {
3255
3264
  try {
3256
- var _this41 = this;
3265
+ var _this40 = this;
3257
3266
 
3258
3267
  // paths used to query the API always has to start without a "/"
3259
3268
  if (path.startsWith('/')) {
3260
3269
  path = path.slice(1);
3261
3270
  }
3262
3271
 
3263
- return Promise.resolve(_this41.rest.get(path + '@all_permissions')).then(function (req) {
3272
+ return Promise.resolve(_this40.rest.get(path + '@all_permissions')).then(function (req) {
3264
3273
  return Promise.resolve(req.json()).then(function (resp) {
3265
3274
  var permissions = Array.from(new Set(extractPermissions(resp)));
3266
3275
  return permissions;
@@ -3273,7 +3282,7 @@
3273
3282
 
3274
3283
  _proto.getTypes = function getTypes(path) {
3275
3284
  try {
3276
- var _this43 = this;
3285
+ var _this42 = this;
3277
3286
 
3278
3287
  function _temp12() {
3279
3288
  return cacheTypes[path];
@@ -3285,7 +3294,7 @@
3285
3294
 
3286
3295
  var _temp13 = function () {
3287
3296
  if (!cacheTypes[path]) {
3288
- return Promise.resolve(_this43.rest.get(path + '@addable-types')).then(function (types) {
3297
+ return Promise.resolve(_this42.rest.get(path + '@addable-types')).then(function (types) {
3289
3298
  var _temp9 = function () {
3290
3299
  if (types.status === 401 || types.status === 404) {
3291
3300
  cacheTypes[path] = [];
@@ -3583,8 +3592,8 @@
3583
3592
  if (labelProperty !== 'id' && value) {
3584
3593
  var searchTermQs = '';
3585
3594
  var searchTermParsed = ["id", value];
3586
- var getSearch = traversal.registry.get;
3587
- var fnName = getSearch('searchEngineQueryParamsFunction', SearchEngine);
3595
+ var getSearchEngineQueryParamsFunction = traversal.registry.getSearchEngineQueryParamsFunction;
3596
+ var fnName = getSearchEngineQueryParamsFunction(SearchEngine);
3588
3597
  var qsParsed = traversal.client.getQueryParamsSearchFunction(fnName)({
3589
3598
  path: traversal.path,
3590
3599
  start: 0,
@@ -3642,10 +3651,8 @@
3642
3651
  searchTermParsed = parser(queryCondition + "=" + value);
3643
3652
  }
3644
3653
 
3645
- var _get = traversal.registry.get;
3646
-
3647
- var fnName = _get('searchEngineQueryParamsFunction', SearchEngine);
3648
-
3654
+ var getSearchEngineQueryParamsFunction = traversal.registry.getSearchEngineQueryParamsFunction;
3655
+ var fnName = getSearchEngineQueryParamsFunction(SearchEngine);
3649
3656
  var qsParsed = traversal.client.getQueryParamsSearchFunction(fnName)({
3650
3657
  path: traversal.path,
3651
3658
  start: page * PageSize,
@@ -3919,10 +3926,8 @@
3919
3926
  searchTermParsed = parser(queryCondition + "=" + value);
3920
3927
  }
3921
3928
 
3922
- var _get = traversal.registry.get;
3923
-
3924
- var fnName = _get('searchEngineQueryParamsFunction', SearchEngine);
3925
-
3929
+ var getSearchEngineQueryParamsFunction = traversal.registry.getSearchEngineQueryParamsFunction;
3930
+ var fnName = getSearchEngineQueryParamsFunction(SearchEngine);
3926
3931
  var qsParsed = traversal.client.getQueryParamsSearchFunction(fnName)({
3927
3932
  path: traversal.path,
3928
3933
  start: page * PageSize,
@@ -3963,8 +3968,8 @@
3963
3968
  setIsLoadingData(true);
3964
3969
  var searchTermQs = '';
3965
3970
  var searchTermParsed = ['__or', "id=" + value.join('%26id=')];
3966
- var getSearch = traversal.registry.get;
3967
- var fnName = getSearch('searchEngineQueryParamsFunction', SearchEngine);
3971
+ var getSearchEngineQueryParamsFunction = traversal.registry.getSearchEngineQueryParamsFunction;
3972
+ var fnName = getSearchEngineQueryParamsFunction(SearchEngine);
3968
3973
  var qsParsed = traversal.client.getQueryParamsSearchFunction(fnName)({
3969
3974
  path: traversal.path,
3970
3975
  start: 0,
@@ -4291,8 +4296,8 @@
4291
4296
  var _useConfig = useConfig(),
4292
4297
  fieldHaveDeleteButton = _useConfig.fieldHaveDeleteButton;
4293
4298
 
4294
- var EditComponent = Ctx.registry.get('components', 'EditComponent');
4295
- var RenderFieldComponent = Ctx.registry.get('components', 'RenderFieldComponent');
4299
+ var EditComponent = Ctx.registry.getComponent('EditComponent');
4300
+ var RenderFieldComponent = Ctx.registry.getComponent('RenderFieldComponent');
4296
4301
  React.useEffect(function () {
4297
4302
  if (isEdit && ref.current) {
4298
4303
  ref.current.focus();
@@ -4634,7 +4639,6 @@
4634
4639
  var schema = _ref3.schema,
4635
4640
  value = _ref3.value,
4636
4641
  modifyContent = _ref3.modifyContent;
4637
- console.log('search render fields');
4638
4642
  var intl = reactIntl.useIntl();
4639
4643
 
4640
4644
  var _useState = React.useState([]),
@@ -4657,8 +4661,8 @@
4657
4661
  setIsLoadingData(true);
4658
4662
  var searchTermQs = '';
4659
4663
  var searchTermParsed = ['__or', "id=" + valuesToSearch.join('%26id=')];
4660
- var getSearch = traversal.registry.get;
4661
- var fnName = getSearch('searchEngineQueryParamsFunction', SearchEngine);
4664
+ var getSearchEngineQueryParamsFunction = traversal.registry.getSearchEngineQueryParamsFunction;
4665
+ var fnName = getSearchEngineQueryParamsFunction(SearchEngine);
4662
4666
  var qsParsed = traversal.client.getQueryParamsSearchFunction(fnName)({
4663
4667
  path: traversal.path,
4664
4668
  start: 0,
@@ -7312,7 +7316,11 @@
7312
7316
  })
7313
7317
  }), columns.map(function (i) {
7314
7318
  return jsxRuntime.jsx(React__default['default'].Fragment, {
7315
- children: i.child(model, link, search)
7319
+ children: i.child({
7320
+ model: model,
7321
+ link: link,
7322
+ search: search
7323
+ })
7316
7324
  }, i.label);
7317
7325
  }), jsxRuntime.jsx("td", {
7318
7326
  style: smallcss,
@@ -7590,11 +7598,11 @@
7590
7598
  loading: true,
7591
7599
  total: Ctx.context.length
7592
7600
  });
7593
- var get = Ctx.registry.get;
7594
- var fnName = get('searchEngineQueryParamsFunction', SearchEngine);
7601
+ var getSearchEngineQueryParamsFunction = Ctx.registry.getSearchEngineQueryParamsFunction;
7602
+ var fnName = getSearchEngineQueryParamsFunction(SearchEngine);
7595
7603
 
7596
7604
  if (sortParsed === undefined) {
7597
- var defaultSortValue = Ctx.registry.getDefaultSortValue(Ctx.context['@type']);
7605
+ var defaultSortValue = Ctx.registry.getDefaultSortValue(Ctx.context['@type'], undefined);
7598
7606
  sortParsed = parser("_sort_" + defaultSortValue.direction + "=" + defaultSortValue.key);
7599
7607
  }
7600
7608
 
@@ -10910,24 +10918,18 @@
10910
10918
  fieldsToFilter: {
10911
10919
  UserManager: ['id', 'email', 'user_name']
10912
10920
  },
10921
+ parseSearchQueryParamFunction: {},
10913
10922
  defaultSortValue: {}
10914
10923
  };
10915
10924
 
10916
- var get$2 = function get(key, param, fallback) {
10917
- if (fallback === void 0) {
10918
- fallback = undefined;
10919
- }
10920
-
10921
- if (registry[key]) return registry[key][param] || fallback;
10922
- return fallback;
10923
- };
10924
-
10925
- var getComponent = function getComponent(context, path, fallback) {
10925
+ var getPathComponent = function getPathComponent(context, path, fallback) {
10926
10926
  if (fallback === void 0) {
10927
10927
  fallback = undefined;
10928
10928
  }
10929
10929
 
10930
- if (!context) return; // console.log("Component for path", path)
10930
+ if (!context) return function () {
10931
+ return null;
10932
+ }; // console.log("Component for path", path)
10931
10933
  // lookup by path
10932
10934
 
10933
10935
  if (registry.paths[path]) {
@@ -10956,6 +10958,10 @@
10956
10958
  return undefined;
10957
10959
  };
10958
10960
 
10961
+ var getComponent = function getComponent(name) {
10962
+ return registry.components[name];
10963
+ };
10964
+
10959
10965
  var getView = function getView(name) {
10960
10966
  return registry.views[name];
10961
10967
  };
@@ -10999,6 +11005,21 @@
10999
11005
  return registry.defaultSortValue[type] || fallback;
11000
11006
  };
11001
11007
 
11008
+ var getSearchEngineQueryParamsFunction = function getSearchEngineQueryParamsFunction(type) {
11009
+ return registry.searchEngineQueryParamsFunction[type];
11010
+ };
11011
+
11012
+ var getParsedSearchQueryParam = function getParsedSearchQueryParam(query, type) {
11013
+ var parsedFunction = registry.parseSearchQueryParamFunction[type];
11014
+
11015
+ if (!parsedFunction) {
11016
+ var fieldsToFilter = getFieldsToFilter(type);
11017
+ return buildQs(parser(query, fieldsToFilter));
11018
+ }
11019
+
11020
+ return parsedFunction(query, type);
11021
+ };
11022
+
11002
11023
  var defaultComponent = function defaultComponent(context) {
11003
11024
  return context.is_folderish ? FolderCtx : ItemCtx;
11004
11025
  };
@@ -11016,17 +11037,19 @@
11016
11037
 
11017
11038
  return {
11018
11039
  registry: registry,
11019
- get: get$2,
11020
11040
  getForm: getForm,
11021
11041
  getComponent: getComponent,
11042
+ getPathComponent: getPathComponent,
11022
11043
  getAction: getAction,
11023
11044
  getBehavior: getBehavior,
11024
11045
  getProperties: getProperties,
11025
11046
  getItemsColumn: getItemsColumn,
11026
11047
  getFieldsToFilter: getFieldsToFilter,
11048
+ getParsedSearchQueryParam: getParsedSearchQueryParam,
11027
11049
  getDefaultSortValue: getDefaultSortValue,
11028
11050
  getSchemas: getSchemas,
11029
- getView: getView
11051
+ getView: getView,
11052
+ getSearchEngineQueryParamsFunction: getSearchEngineQueryParamsFunction
11030
11053
  };
11031
11054
  }
11032
11055
  /*
@@ -13935,7 +13958,7 @@
13935
13958
  var ErrorBoundary = registry.getView('ErrorBoundary');
13936
13959
  var NotAllowed = registry.getView('NotAllowed');
13937
13960
  var NotFound = registry.getView('NotFound');
13938
- var Path = registry.get('components', 'Path');
13961
+ var Path = registry.getComponent('Path');
13939
13962
  var contextData = {
13940
13963
  url: url,
13941
13964
  client: client,
@@ -13948,7 +13971,7 @@
13948
13971
  var action = state.action,
13949
13972
  errorStatus = state.errorStatus,
13950
13973
  permissions = state.permissions;
13951
- var Main = registry.getComponent(state.context, path);
13974
+ var Main = registry.getPathComponent(state.context, path);
13952
13975
  var Action = action.action ? registry.getAction(action.action) : null;
13953
13976
  return jsxRuntime.jsx(reactIntl.IntlProvider, {
13954
13977
  locale: locale,
@@ -14234,7 +14257,7 @@
14234
14257
  type = _ref.type;
14235
14258
  var intl = reactIntl.useIntl();
14236
14259
  var Ctx = useTraversal();
14237
- var EditComponent = Ctx.registry.get('components', 'EditComponent');
14260
+ var EditComponent = Ctx.registry.getComponent('EditComponent');
14238
14261
 
14239
14262
  var _useState = React.useState({}),
14240
14263
  formData = _useState[0],