@slickgrid-universal/composite-editor-component 3.7.0 → 4.0.0-alpha.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/README.md CHANGED
@@ -20,6 +20,7 @@ Vanilla Bundle implementation of a Composite Editor Modal Window which can do th
20
20
  - Mass Selection Changes (similar to Mass Update but only for the selected items/rows)
21
21
 
22
22
  ### Internal Dependencies
23
+ - [@slickgrid-universal/binding](https://github.com/ghiscoding/slickgrid-universal/tree/master/packages/binding)
23
24
  - [@slickgrid-universal/common](https://github.com/ghiscoding/slickgrid-universal/tree/master/packages/common)
24
25
  - [@slickgrid-universal/utils](https://github.com/ghiscoding/slickgrid-universal/tree/master/packages/utils)
25
26
 
@@ -45,16 +45,15 @@ function CompositeEditor(columns, containers, options) {
45
45
  /* no operation (empty) function */
46
46
  const noop = () => { };
47
47
  const getContainerBox = (i) => {
48
- var _a, _b, _c, _d, _e, _f;
49
48
  const container = containers[i];
50
- const offset = (0, common_1.getHtmlElementOffset)(container);
51
- const width = (_a = container === null || container === void 0 ? void 0 : container.clientWidth) !== null && _a !== void 0 ? _a : 0;
52
- const height = (_b = container === null || container === void 0 ? void 0 : container.clientHeight) !== null && _b !== void 0 ? _b : 0;
49
+ const offset = (0, common_1.getOffset)(container);
50
+ const width = container?.clientWidth ?? 0;
51
+ const height = container?.clientHeight ?? 0;
53
52
  return {
54
- top: (_c = offset === null || offset === void 0 ? void 0 : offset.top) !== null && _c !== void 0 ? _c : 0,
55
- left: (_d = offset === null || offset === void 0 ? void 0 : offset.left) !== null && _d !== void 0 ? _d : 0,
56
- bottom: ((_e = offset === null || offset === void 0 ? void 0 : offset.top) !== null && _e !== void 0 ? _e : 0) + height,
57
- right: ((_f = offset === null || offset === void 0 ? void 0 : offset.left) !== null && _f !== void 0 ? _f : 0) + width,
53
+ top: offset?.top ?? 0,
54
+ left: offset?.left ?? 0,
55
+ bottom: (offset?.top ?? 0) + height,
56
+ right: (offset?.left ?? 0) + width,
58
57
  width,
59
58
  height,
60
59
  visible: true
@@ -96,19 +95,18 @@ function CompositeEditor(columns, containers, options) {
96
95
  return editors;
97
96
  };
98
97
  context.destroy = () => {
99
- var _a;
100
98
  let tmpEditor = editors.pop();
101
99
  while (tmpEditor) {
102
- tmpEditor === null || tmpEditor === void 0 ? void 0 : tmpEditor.destroy();
100
+ tmpEditor?.destroy();
103
101
  tmpEditor = editors.pop();
104
102
  }
105
103
  let tmpContainer = containers.pop();
106
104
  while (tmpContainer) {
107
105
  (0, common_1.emptyElement)(tmpContainer);
108
- tmpContainer === null || tmpContainer === void 0 ? void 0 : tmpContainer.remove();
106
+ tmpContainer?.remove();
109
107
  tmpContainer = containers.pop();
110
108
  }
111
- (_a = options === null || options === void 0 ? void 0 : options.destroy) === null || _a === void 0 ? void 0 : _a.call(options);
109
+ options?.destroy?.();
112
110
  editors = [];
113
111
  containers = null;
114
112
  };
@@ -138,7 +136,7 @@ function CompositeEditor(columns, containers, options) {
138
136
  context.applyValue = (item, state) => {
139
137
  let idx = 0;
140
138
  while (idx < editors.length) {
141
- editors[idx].applyValue(item, state === null || state === void 0 ? void 0 : state[idx]);
139
+ editors[idx].applyValue(item, state?.[idx]);
142
140
  idx++;
143
141
  }
144
142
  };
@@ -150,20 +148,19 @@ function CompositeEditor(columns, containers, options) {
150
148
  }
151
149
  };
152
150
  context.validate = (targetElm) => {
153
- var _a, _b;
154
151
  let validationResults;
155
152
  firstInvalidEditor = null;
156
153
  const errors = [];
157
154
  let idx = 0;
158
155
  while (idx < editors.length) {
159
- const columnDef = (_a = editors[idx].args) === null || _a === void 0 ? void 0 : _a.column;
160
- if ((columnDef === null || columnDef === void 0 ? void 0 : columnDef.id) !== undefined) {
156
+ const columnDef = editors[idx].args?.column;
157
+ if (columnDef?.id !== undefined) {
161
158
  const compositeModalElm = document.querySelector(`.slick-editor-modal`);
162
- let validationElm = compositeModalElm === null || compositeModalElm === void 0 ? void 0 : compositeModalElm.querySelector(`.item-details-validation.editor-${columnDef.id}`);
163
- let labelElm = compositeModalElm === null || compositeModalElm === void 0 ? void 0 : compositeModalElm.querySelector(`.item-details-label.editor-${columnDef.id}`);
164
- let editorElm = compositeModalElm === null || compositeModalElm === void 0 ? void 0 : compositeModalElm.querySelector(`[data-editorid=${columnDef.id}]`);
165
- const validationMsgPrefix = (_b = options === null || options === void 0 ? void 0 : options.validationMsgPrefix) !== null && _b !== void 0 ? _b : '';
166
- if (!targetElm || (editorElm === null || editorElm === void 0 ? void 0 : editorElm.contains(targetElm))) {
159
+ let validationElm = compositeModalElm?.querySelector(`.item-details-validation.editor-${columnDef.id}`);
160
+ let labelElm = compositeModalElm?.querySelector(`.item-details-label.editor-${columnDef.id}`);
161
+ let editorElm = compositeModalElm?.querySelector(`[data-editorid=${columnDef.id}]`);
162
+ const validationMsgPrefix = options?.validationMsgPrefix ?? '';
163
+ if (!targetElm || editorElm?.contains(targetElm)) {
167
164
  validationResults = editors[idx].validate();
168
165
  if (!validationResults.valid) {
169
166
  firstInvalidEditor = editors[idx];
@@ -175,14 +172,14 @@ function CompositeEditor(columns, containers, options) {
175
172
  });
176
173
  if (validationElm) {
177
174
  validationElm.textContent = `${validationMsgPrefix}${validationResults.msg}`;
178
- labelElm === null || labelElm === void 0 ? void 0 : labelElm.classList.add('invalid');
179
- editorElm === null || editorElm === void 0 ? void 0 : editorElm.classList.add('invalid');
175
+ labelElm?.classList.add('invalid');
176
+ editorElm?.classList.add('invalid');
180
177
  }
181
178
  }
182
179
  else if (validationElm) {
183
180
  validationElm.textContent = '';
184
- editorElm === null || editorElm === void 0 ? void 0 : editorElm.classList.remove('invalid');
185
- labelElm === null || labelElm === void 0 ? void 0 : labelElm.classList.remove('invalid');
181
+ editorElm?.classList.remove('invalid');
182
+ labelElm?.classList.remove('invalid');
186
183
  }
187
184
  }
188
185
  validationElm = null;
@@ -205,33 +202,29 @@ function CompositeEditor(columns, containers, options) {
205
202
  };
206
203
  };
207
204
  context.hide = () => {
208
- var _a, _b, _c;
209
205
  let idx = 0;
210
206
  while (idx < editors.length) {
211
- (_b = (_a = editors[idx]) === null || _a === void 0 ? void 0 : _a.hide) === null || _b === void 0 ? void 0 : _b.call(_a);
207
+ editors[idx]?.hide?.();
212
208
  idx++;
213
209
  }
214
- (_c = options === null || options === void 0 ? void 0 : options.hide) === null || _c === void 0 ? void 0 : _c.call(options);
210
+ options?.hide?.();
215
211
  };
216
212
  context.show = () => {
217
- var _a, _b, _c;
218
213
  let idx = 0;
219
214
  while (idx < editors.length) {
220
- (_b = (_a = editors[idx]) === null || _a === void 0 ? void 0 : _a.show) === null || _b === void 0 ? void 0 : _b.call(_a);
215
+ editors[idx]?.show?.();
221
216
  idx++;
222
217
  }
223
- (_c = options === null || options === void 0 ? void 0 : options.show) === null || _c === void 0 ? void 0 : _c.call(options);
218
+ options?.show?.();
224
219
  };
225
220
  context.position = (box) => {
226
- var _a;
227
- (_a = options === null || options === void 0 ? void 0 : options.position) === null || _a === void 0 ? void 0 : _a.call(options, box);
221
+ options?.position?.(box);
228
222
  };
229
223
  // initialize current editor
230
224
  init();
231
225
  }
232
- // so we can do editor instanceof Slick.CompositeEditor OR instanceof CompositeEditor
226
+ // so we can do editor instanceof SlickCompositeEditor OR instanceof CompositeEditor
233
227
  editor.prototype = this;
234
- Slick.CompositeEditor = editor;
235
228
  return editor;
236
229
  }
237
230
  exports.CompositeEditor = CompositeEditor;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compositeEditor.factory.js","sourceRoot":"","sources":["../../src/compositeEditor.factory.ts"],"names":[],"mappings":"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"}