ldap-rest 0.20.2 → 0.20.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 (78) hide show
  1. package/dist/abstract/ldapFlat.js +1 -1
  2. package/dist/config/schema.js +1 -1
  3. package/dist/lib/expressFormatedResponses.js +1 -1
  4. package/dist/lib/instanceProviders.js +1 -1
  5. package/dist/lib/ldapActions.js +1 -1
  6. package/dist/plugins/ldap/accountLifecycle.js +1 -1
  7. package/dist/plugins/ldap/groups.js +1 -1
  8. package/dist/plugins/ldap/organizations.js +1 -1
  9. package/dist/plugins/ldap/passwordPolicy.js +1 -1
  10. package/dist/plugins/ldap/raw.js +1 -1
  11. package/dist/plugins/twake/clouderyProvision.js +1 -1
  12. package/dist/plugins/twake/instances.js +1 -1
  13. package/dist/src/browser/ldap-group-editor/api/GroupApiClient.d.ts +10 -5
  14. package/dist/src/browser/ldap-group-editor/types.d.ts +8 -0
  15. package/dist/src/browser/ldap-resource-editor/api/ResourceApiClient.d.ts +7 -1
  16. package/dist/src/browser/ldap-unit-editor/api/UnitApiClient.d.ts +7 -5
  17. package/dist/src/browser/ldap-user-editor/LdapUserEditor.d.ts +2 -0
  18. package/dist/src/browser/ldap-user-editor/api/UserApiClient.d.ts +7 -1
  19. package/dist/src/browser/shared/utils/form.d.ts +30 -0
  20. package/dist/src/config/schema.d.ts +30 -1
  21. package/dist/src/lib/instanceProviders.d.ts +11 -0
  22. package/dist/src/lib/ldapActions.d.ts +9 -0
  23. package/dist/src/plugins/ldap/accountLifecycle.d.ts +2 -0
  24. package/dist/src/plugins/twake/clouderyProvision.d.ts +7 -1
  25. package/docs/client-development/api/rest-api.md +19 -0
  26. package/docs/usage/plugins/integrations/instances.md +9 -5
  27. package/docs/usage/plugins/ldap/account-lifecycle.md +9 -1
  28. package/docs/usage/upgrading.md +20 -0
  29. package/examples/web/README.md +5 -1
  30. package/examples/web/ldap-user-editor.html +9 -15
  31. package/examples/web/totp-client.html +51 -14
  32. package/package.json +1 -1
  33. package/static/browser/ldap-group-editor/api/GroupApiClient.js +27 -13
  34. package/static/browser/ldap-group-editor/api/GroupApiClient.js.map +1 -1
  35. package/static/browser/ldap-group-editor/components/CreateGroupModal.js +5 -17
  36. package/static/browser/ldap-group-editor/components/CreateGroupModal.js.map +1 -1
  37. package/static/browser/ldap-group-editor/components/GroupPropertyEditor.js +28 -12
  38. package/static/browser/ldap-group-editor/components/GroupPropertyEditor.js.map +1 -1
  39. package/static/browser/ldap-group-editor/components/MoveGroupModal.js.map +1 -1
  40. package/static/browser/ldap-group-editor.esm.js +114 -42
  41. package/static/browser/ldap-group-editor.esm.js.map +1 -1
  42. package/static/browser/ldap-group-editor.js +114 -42
  43. package/static/browser/ldap-group-editor.js.map +1 -1
  44. package/static/browser/ldap-group-editor.min.js +1 -1
  45. package/static/browser/ldap-group-editor.min.js.map +1 -1
  46. package/static/browser/ldap-resource-editor/api/ResourceApiClient.js +8 -2
  47. package/static/browser/ldap-resource-editor/api/ResourceApiClient.js.map +1 -1
  48. package/static/browser/ldap-unit-editor/api/UnitApiClient.js +8 -13
  49. package/static/browser/ldap-unit-editor/api/UnitApiClient.js.map +1 -1
  50. package/static/browser/ldap-unit-editor/components/UnitPropertyEditor.js +5 -2
  51. package/static/browser/ldap-unit-editor/components/UnitPropertyEditor.js.map +1 -1
  52. package/static/browser/ldap-unit-editor.esm.js +52 -15
  53. package/static/browser/ldap-unit-editor.esm.js.map +1 -1
  54. package/static/browser/ldap-unit-editor.js +52 -15
  55. package/static/browser/ldap-unit-editor.js.map +1 -1
  56. package/static/browser/ldap-unit-editor.min.js +1 -1
  57. package/static/browser/ldap-unit-editor.min.js.map +1 -1
  58. package/static/browser/ldap-user-editor/LdapUserEditor.js +22 -21
  59. package/static/browser/ldap-user-editor/LdapUserEditor.js.map +1 -1
  60. package/static/browser/ldap-user-editor/api/UserApiClient.js +8 -2
  61. package/static/browser/ldap-user-editor/api/UserApiClient.js.map +1 -1
  62. package/static/browser/ldap-user-editor/components/UserEditor.js +19 -9
  63. package/static/browser/ldap-user-editor/components/UserEditor.js.map +1 -1
  64. package/static/browser/ldap-user-editor.esm.js +88 -32
  65. package/static/browser/ldap-user-editor.esm.js.map +1 -1
  66. package/static/browser/ldap-user-editor.js +88 -32
  67. package/static/browser/ldap-user-editor.js.map +1 -1
  68. package/static/browser/ldap-user-editor.min.js +1 -1
  69. package/static/browser/ldap-user-editor.min.js.map +1 -1
  70. package/static/browser/shared/index.js +1 -1
  71. package/static/browser/shared/utils/form.js +51 -1
  72. package/static/browser/shared/utils/form.js.map +1 -1
  73. package/static/browser/shared.esm.js +51 -1
  74. package/static/browser/shared.esm.js.map +1 -1
  75. package/static/browser/shared.js +53 -0
  76. package/static/browser/shared.js.map +1 -1
  77. package/static/browser/shared.min.js +1 -1
  78. package/static/browser/shared.min.js.map +1 -1
@@ -227,11 +227,17 @@ class UserApiClient {
227
227
  const url = `${this.getApiBase()}/ldap/users/${encodeURIComponent(dn)}`;
228
228
  return this.cachedFetch(url);
229
229
  }
230
- async updateUser(dn, data) {
230
+ /**
231
+ * Replace attributes of an entry.
232
+ *
233
+ * @param dn entry to change
234
+ * @param replace attributes to replace; see `changedAttributes`
235
+ */
236
+ async updateUser(dn, replace) {
231
237
  const res = await fetch(`${this.getApiBase()}/ldap/users/${encodeURIComponent(dn)}`, {
232
238
  method: 'PUT',
233
239
  headers: { 'Content-Type': 'application/json' },
234
- body: JSON.stringify(data),
240
+ body: JSON.stringify({ replace }),
235
241
  });
236
242
  if (!res.ok) {
237
243
  const error = await res.text();
@@ -1033,6 +1039,46 @@ class MoveUserModal {
1033
1039
  }
1034
1040
  }
1035
1041
 
1042
+ /**
1043
+ * Form utility functions
1044
+ * @module browser/shared/utils/form
1045
+ */
1046
+ const isEmpty = (value) => value === undefined || value === null || value === '';
1047
+ /** The values a field holds, without the empty rows a list field may carry */
1048
+ const valueList = (value) => (Array.isArray(value) ? value : [value]).filter(v => !isEmpty(v));
1049
+ /**
1050
+ * A value as the list it stands for: the API gives an attribute holding one
1051
+ * value as that value, not as a one-element list.
1052
+ *
1053
+ * @param value attribute value as the API gives it
1054
+ * @returns its values as text
1055
+ */
1056
+ const listValues = (value) => valueList(value).map(String);
1057
+ /**
1058
+ * The attributes of `edited` whose value differs from `original`, as the
1059
+ * `replace` of a modify request: the routes take only `add`, `replace` and
1060
+ * `delete`, and refuse a computed attribute even sent unchanged. One emptied
1061
+ * in the form is replaced with no value, which clears it.
1062
+ *
1063
+ * @param original entry as loaded
1064
+ * @param edited attributes as the form holds them
1065
+ * @returns the attributes to replace, empty when nothing changed
1066
+ */
1067
+ function changedAttributes(original, edited) {
1068
+ const replace = {};
1069
+ for (const [name, value] of Object.entries(edited)) {
1070
+ if (name === 'dn')
1071
+ continue;
1072
+ const after = valueList(value);
1073
+ const a = after.map(String).sort();
1074
+ const b = valueList(original?.[name]).map(String).sort();
1075
+ if (a.length === b.length && a.every((v, i) => v === b[i]))
1076
+ continue;
1077
+ replace[name] = Array.isArray(value) ? after : after.length ? value : [];
1078
+ }
1079
+ return replace;
1080
+ }
1081
+
1036
1082
  /**
1037
1083
  * LDAP User Editor - User Editor Component
1038
1084
  */
@@ -1112,6 +1158,11 @@ class UserEditor {
1112
1158
  this.replacePlaceholders(this.schema);
1113
1159
  }
1114
1160
  this.formData = { ...this.user };
1161
+ // One value comes as a scalar: as a list, it is shown and kept when a
1162
+ // row is added
1163
+ for (const [name, attr] of Object.entries(this.schema?.attributes ?? {}))
1164
+ if (attr.type === 'array' && this.formData[name] !== undefined)
1165
+ this.formData[name] = listValues(this.formData[name]);
1115
1166
  }
1116
1167
  replacePlaceholders(schema) {
1117
1168
  for (const attr of Object.values(schema.attributes)) {
@@ -1497,7 +1548,9 @@ class UserEditor {
1497
1548
  if (submitBtn)
1498
1549
  submitBtn.disabled = true;
1499
1550
  try {
1500
- await this.api.updateUser(this.userDn, this.formData);
1551
+ const replace = changedAttributes(this.user, this.formData);
1552
+ if (Object.keys(replace).length)
1553
+ await this.api.updateUser(this.userDn, replace);
1501
1554
  if (alertContainer) {
1502
1555
  alertContainer.innerHTML = `
1503
1556
  <div class="alert alert-success">
@@ -1560,20 +1613,22 @@ class UserEditor {
1560
1613
  }
1561
1614
  try {
1562
1615
  const result = await this.api.moveUser(this.userDn, targetOrgDn);
1563
- if (alertContainer) {
1564
- alertContainer.innerHTML = `
1616
+ // Update the userDn if it changed
1617
+ if (result.newDn) {
1618
+ this.userDn = result.newDn;
1619
+ }
1620
+ // Reload the user data to show updated organization; it renders the
1621
+ // container anew, so the message comes after
1622
+ await this.init();
1623
+ const alert = this.container.querySelector('#alert-container');
1624
+ if (alert) {
1625
+ alert.innerHTML = `
1565
1626
  <div class="alert alert-success">
1566
1627
  <span class="material-icons">check_circle</span>
1567
1628
  <div>User moved successfully!</div>
1568
1629
  </div>
1569
1630
  `;
1570
1631
  }
1571
- // Update the userDn if it changed
1572
- if (result.newDn) {
1573
- this.userDn = result.newDn;
1574
- }
1575
- // Reload the user data to show updated organization
1576
- await this.init();
1577
1632
  if (this.onSaved)
1578
1633
  this.onSaved();
1579
1634
  }
@@ -1909,10 +1964,9 @@ class LdapUserEditor {
1909
1964
  if (this.currentOrgDn && this.userList) {
1910
1965
  this.userList.refresh();
1911
1966
  }
1912
- }, () => {
1913
- // On user deleted
1914
- this.deleteUser(dn);
1915
- });
1967
+ },
1968
+ // UserEditor has deleted the entry already
1969
+ () => void this.userDeleted(dn));
1916
1970
  try {
1917
1971
  await this.userEditor.init();
1918
1972
  }
@@ -1957,29 +2011,31 @@ class LdapUserEditor {
1957
2011
  async deleteUser(dn) {
1958
2012
  try {
1959
2013
  await this.api.deleteUser(dn);
1960
- // Clear current selection if we deleted the selected user
1961
- if (this.currentUserDn === dn) {
1962
- this.currentUserDn = null;
1963
- const editorContainer = document.getElementById('user-editor-container');
1964
- if (editorContainer) {
1965
- editorContainer.innerHTML = `
1966
- <div class="empty-state">
1967
- <span class="material-icons">person_search</span>
1968
- <p>Select a user from the list to edit</p>
1969
- </div>
1970
- `;
1971
- }
1972
- }
1973
- // Refresh the user list
1974
- if (this.userList) {
1975
- await this.userList.refresh();
1976
- }
2014
+ await this.userDeleted(dn);
1977
2015
  }
1978
2016
  catch (error) {
1979
2017
  this.handleError(error);
1980
2018
  throw error;
1981
2019
  }
1982
2020
  }
2021
+ /** Clear the selection and refresh the list once `dn` is deleted */
2022
+ async userDeleted(dn) {
2023
+ if (this.currentUserDn === dn) {
2024
+ this.currentUserDn = null;
2025
+ const editorContainer = document.getElementById('user-editor-container');
2026
+ if (editorContainer) {
2027
+ editorContainer.innerHTML = `
2028
+ <div class="empty-state">
2029
+ <span class="material-icons">person_search</span>
2030
+ <p>Select a user from the list to edit</p>
2031
+ </div>
2032
+ `;
2033
+ }
2034
+ }
2035
+ if (this.userList) {
2036
+ await this.userList.refresh();
2037
+ }
2038
+ }
1983
2039
  getConfig() {
1984
2040
  return this.config;
1985
2041
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ldap-user-editor.esm.js","sources":["../../../../src/browser/ldap-user-editor/cache/CacheManager.ts","../../../../src/browser/shared/utils/schema.ts","../../../../src/browser/ldap-user-editor/api/UserApiClient.ts","../../../../src/browser/shared/components/DisposableComponent.ts","../../../../src/browser/ldap-user-editor/components/UserTree.ts","../../../../src/browser/ldap-user-editor/components/PointerField.ts","../../../../src/browser/ldap-user-editor/components/MoveUserModal.ts","../../../../src/browser/ldap-user-editor/components/UserEditor.ts","../../../../src/browser/ldap-user-editor/components/UserList.ts","../../../../src/browser/ldap-user-editor/LdapUserEditor.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ldap-user-editor.esm.js","sources":["../../../../src/browser/ldap-user-editor/cache/CacheManager.ts","../../../../src/browser/shared/utils/schema.ts","../../../../src/browser/ldap-user-editor/api/UserApiClient.ts","../../../../src/browser/shared/components/DisposableComponent.ts","../../../../src/browser/ldap-user-editor/components/UserTree.ts","../../../../src/browser/ldap-user-editor/components/PointerField.ts","../../../../src/browser/ldap-user-editor/components/MoveUserModal.ts","../../../../src/browser/shared/utils/form.ts","../../../../src/browser/ldap-user-editor/components/UserEditor.ts","../../../../src/browser/ldap-user-editor/components/UserList.ts","../../../../src/browser/ldap-user-editor/LdapUserEditor.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
@@ -233,11 +233,17 @@
233
233
  const url = `${this.getApiBase()}/ldap/users/${encodeURIComponent(dn)}`;
234
234
  return this.cachedFetch(url);
235
235
  }
236
- async updateUser(dn, data) {
236
+ /**
237
+ * Replace attributes of an entry.
238
+ *
239
+ * @param dn entry to change
240
+ * @param replace attributes to replace; see `changedAttributes`
241
+ */
242
+ async updateUser(dn, replace) {
237
243
  const res = await fetch(`${this.getApiBase()}/ldap/users/${encodeURIComponent(dn)}`, {
238
244
  method: 'PUT',
239
245
  headers: { 'Content-Type': 'application/json' },
240
- body: JSON.stringify(data),
246
+ body: JSON.stringify({ replace }),
241
247
  });
242
248
  if (!res.ok) {
243
249
  const error = await res.text();
@@ -1039,6 +1045,46 @@
1039
1045
  }
1040
1046
  }
1041
1047
 
1048
+ /**
1049
+ * Form utility functions
1050
+ * @module browser/shared/utils/form
1051
+ */
1052
+ const isEmpty = (value) => value === undefined || value === null || value === '';
1053
+ /** The values a field holds, without the empty rows a list field may carry */
1054
+ const valueList = (value) => (Array.isArray(value) ? value : [value]).filter(v => !isEmpty(v));
1055
+ /**
1056
+ * A value as the list it stands for: the API gives an attribute holding one
1057
+ * value as that value, not as a one-element list.
1058
+ *
1059
+ * @param value attribute value as the API gives it
1060
+ * @returns its values as text
1061
+ */
1062
+ const listValues = (value) => valueList(value).map(String);
1063
+ /**
1064
+ * The attributes of `edited` whose value differs from `original`, as the
1065
+ * `replace` of a modify request: the routes take only `add`, `replace` and
1066
+ * `delete`, and refuse a computed attribute even sent unchanged. One emptied
1067
+ * in the form is replaced with no value, which clears it.
1068
+ *
1069
+ * @param original entry as loaded
1070
+ * @param edited attributes as the form holds them
1071
+ * @returns the attributes to replace, empty when nothing changed
1072
+ */
1073
+ function changedAttributes(original, edited) {
1074
+ const replace = {};
1075
+ for (const [name, value] of Object.entries(edited)) {
1076
+ if (name === 'dn')
1077
+ continue;
1078
+ const after = valueList(value);
1079
+ const a = after.map(String).sort();
1080
+ const b = valueList(original?.[name]).map(String).sort();
1081
+ if (a.length === b.length && a.every((v, i) => v === b[i]))
1082
+ continue;
1083
+ replace[name] = Array.isArray(value) ? after : after.length ? value : [];
1084
+ }
1085
+ return replace;
1086
+ }
1087
+
1042
1088
  /**
1043
1089
  * LDAP User Editor - User Editor Component
1044
1090
  */
@@ -1118,6 +1164,11 @@
1118
1164
  this.replacePlaceholders(this.schema);
1119
1165
  }
1120
1166
  this.formData = { ...this.user };
1167
+ // One value comes as a scalar: as a list, it is shown and kept when a
1168
+ // row is added
1169
+ for (const [name, attr] of Object.entries(this.schema?.attributes ?? {}))
1170
+ if (attr.type === 'array' && this.formData[name] !== undefined)
1171
+ this.formData[name] = listValues(this.formData[name]);
1121
1172
  }
1122
1173
  replacePlaceholders(schema) {
1123
1174
  for (const attr of Object.values(schema.attributes)) {
@@ -1503,7 +1554,9 @@
1503
1554
  if (submitBtn)
1504
1555
  submitBtn.disabled = true;
1505
1556
  try {
1506
- await this.api.updateUser(this.userDn, this.formData);
1557
+ const replace = changedAttributes(this.user, this.formData);
1558
+ if (Object.keys(replace).length)
1559
+ await this.api.updateUser(this.userDn, replace);
1507
1560
  if (alertContainer) {
1508
1561
  alertContainer.innerHTML = `
1509
1562
  <div class="alert alert-success">
@@ -1566,20 +1619,22 @@
1566
1619
  }
1567
1620
  try {
1568
1621
  const result = await this.api.moveUser(this.userDn, targetOrgDn);
1569
- if (alertContainer) {
1570
- alertContainer.innerHTML = `
1622
+ // Update the userDn if it changed
1623
+ if (result.newDn) {
1624
+ this.userDn = result.newDn;
1625
+ }
1626
+ // Reload the user data to show updated organization; it renders the
1627
+ // container anew, so the message comes after
1628
+ await this.init();
1629
+ const alert = this.container.querySelector('#alert-container');
1630
+ if (alert) {
1631
+ alert.innerHTML = `
1571
1632
  <div class="alert alert-success">
1572
1633
  <span class="material-icons">check_circle</span>
1573
1634
  <div>User moved successfully!</div>
1574
1635
  </div>
1575
1636
  `;
1576
1637
  }
1577
- // Update the userDn if it changed
1578
- if (result.newDn) {
1579
- this.userDn = result.newDn;
1580
- }
1581
- // Reload the user data to show updated organization
1582
- await this.init();
1583
1638
  if (this.onSaved)
1584
1639
  this.onSaved();
1585
1640
  }
@@ -1915,10 +1970,9 @@
1915
1970
  if (this.currentOrgDn && this.userList) {
1916
1971
  this.userList.refresh();
1917
1972
  }
1918
- }, () => {
1919
- // On user deleted
1920
- this.deleteUser(dn);
1921
- });
1973
+ },
1974
+ // UserEditor has deleted the entry already
1975
+ () => void this.userDeleted(dn));
1922
1976
  try {
1923
1977
  await this.userEditor.init();
1924
1978
  }
@@ -1963,29 +2017,31 @@
1963
2017
  async deleteUser(dn) {
1964
2018
  try {
1965
2019
  await this.api.deleteUser(dn);
1966
- // Clear current selection if we deleted the selected user
1967
- if (this.currentUserDn === dn) {
1968
- this.currentUserDn = null;
1969
- const editorContainer = document.getElementById('user-editor-container');
1970
- if (editorContainer) {
1971
- editorContainer.innerHTML = `
1972
- <div class="empty-state">
1973
- <span class="material-icons">person_search</span>
1974
- <p>Select a user from the list to edit</p>
1975
- </div>
1976
- `;
1977
- }
1978
- }
1979
- // Refresh the user list
1980
- if (this.userList) {
1981
- await this.userList.refresh();
1982
- }
2020
+ await this.userDeleted(dn);
1983
2021
  }
1984
2022
  catch (error) {
1985
2023
  this.handleError(error);
1986
2024
  throw error;
1987
2025
  }
1988
2026
  }
2027
+ /** Clear the selection and refresh the list once `dn` is deleted */
2028
+ async userDeleted(dn) {
2029
+ if (this.currentUserDn === dn) {
2030
+ this.currentUserDn = null;
2031
+ const editorContainer = document.getElementById('user-editor-container');
2032
+ if (editorContainer) {
2033
+ editorContainer.innerHTML = `
2034
+ <div class="empty-state">
2035
+ <span class="material-icons">person_search</span>
2036
+ <p>Select a user from the list to edit</p>
2037
+ </div>
2038
+ `;
2039
+ }
2040
+ }
2041
+ if (this.userList) {
2042
+ await this.userList.refresh();
2043
+ }
2044
+ }
1989
2045
  getConfig() {
1990
2046
  return this.config;
1991
2047
  }