@objectstack/platform-objects 9.11.0 → 10.2.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/dist/index.mjs CHANGED
@@ -378,6 +378,19 @@ var SysUser = ObjectSchema.create({
378
378
  required: false,
379
379
  group: "Profile"
380
380
  }),
381
+ // ── Organization ─────────────────────────────────────────────
382
+ manager_id: Field.lookup("sys_user", {
383
+ label: "Manager",
384
+ required: false,
385
+ group: "Organization",
386
+ description: "This user's direct manager. Forms the reporting chain the `own_and_reports` hierarchy scope walks (ADR-0057 / @objectstack/security-enterprise)."
387
+ }),
388
+ primary_business_unit_id: Field.lookup("sys_business_unit", {
389
+ label: "Primary Business Unit",
390
+ required: false,
391
+ group: "Organization",
392
+ description: "The user's primary business unit \u2014 a denormalised projection of sys_business_unit_member.is_primary, maintained by plugin-sharing (ADR-0057 addendum D12). Lets a user-lookup filter candidates by business unit without traversing the membership junction. Do not edit directly; set it via business-unit membership."
393
+ }),
381
394
  // ── System (auto-managed, hidden from create/edit forms) ─────
382
395
  id: Field.text({
383
396
  label: "User ID",
@@ -1158,7 +1171,10 @@ var SysMember = ObjectSchema.create({
1158
1171
  }),
1159
1172
  organization_id: Field.lookup("sys_organization", {
1160
1173
  label: "Organization",
1161
- required: true
1174
+ // Optional: single-tenant has no sys_organization row and no auto-stamp
1175
+ // (org-scoping is multi-tenant-only). Multi-tenant: OrgScopingPlugin stamps it
1176
+ // and tenant-isolation RLS hides null-org rows (fail-closed). ADR-0057 addendum.
1177
+ required: false
1162
1178
  }),
1163
1179
  user_id: Field.lookup("sys_user", {
1164
1180
  label: "User",
@@ -1345,7 +1361,10 @@ var SysInvitation = ObjectSchema.create({
1345
1361
  }),
1346
1362
  organization_id: Field.lookup("sys_organization", {
1347
1363
  label: "Organization",
1348
- required: true
1364
+ // Optional: single-tenant has no sys_organization row and no auto-stamp
1365
+ // (org-scoping is multi-tenant-only). Multi-tenant: OrgScopingPlugin stamps it
1366
+ // and tenant-isolation RLS hides null-org rows (fail-closed). ADR-0057 addendum.
1367
+ required: false
1349
1368
  }),
1350
1369
  email: Field.email({
1351
1370
  label: "Email",
@@ -1505,8 +1524,13 @@ var SysTeam = ObjectSchema.create({
1505
1524
  }),
1506
1525
  organization_id: Field.lookup("sys_organization", {
1507
1526
  label: "Organization",
1508
- required: true,
1509
- description: "Parent organization for this team",
1527
+ // Optional: single-tenant deployments have no organization row (org-scoping
1528
+ // is multi-tenant-only, nothing auto-stamps one) — requiring it would make
1529
+ // the object uncreatable single-tenant. In multi-tenant, OrgScopingPlugin
1530
+ // auto-stamps this from the active tenant and tenant-isolation RLS hides any
1531
+ // null-org row (fail-closed). ADR-0057 addendum.
1532
+ required: false,
1533
+ description: "Parent organization for this team. Null in single-tenant; auto-stamped in multi-tenant.",
1510
1534
  group: "Identity"
1511
1535
  }),
1512
1536
  // ── System ───────────────────────────────────────────────────
@@ -1635,24 +1659,42 @@ var SysTeamMember = ObjectSchema.create({
1635
1659
  mru: false
1636
1660
  }
1637
1661
  });
1638
- var SysDepartment = ObjectSchema.create({
1639
- name: "sys_department",
1640
- label: "Department",
1641
- pluralLabel: "Departments",
1662
+ var SysBusinessUnit = ObjectSchema.create({
1663
+ name: "sys_business_unit",
1664
+ label: "Business Unit",
1665
+ pluralLabel: "Business Units",
1642
1666
  icon: "building",
1643
1667
  isSystem: true,
1644
1668
  managedBy: "platform",
1645
- description: "Hierarchical org-skeleton node (department / division / business unit / office).",
1669
+ description: "Canonical Business Unit tree \u2014 hierarchical org/data-partition node (company / division / department / region / office). ADR-0057 D2.",
1646
1670
  displayNameField: "name",
1647
1671
  titleFormat: "{name}",
1648
- compactLayout: ["name", "kind", "parent_department_id", "manager_user_id"],
1672
+ compactLayout: ["name", "kind", "parent_business_unit_id", "manager_user_id"],
1649
1673
  listViews: {
1674
+ // Org chart — the hierarchy view. Surfaces the self-referencing
1675
+ // `parent_business_unit_id` tree (ADR-0057 D2) as an indented, expand/
1676
+ // collapse tree-grid. Listed first so it's the default tab; the grids
1677
+ // below stay for search / filter / bulk edit.
1678
+ org_chart: {
1679
+ type: "tree",
1680
+ name: "org_chart",
1681
+ label: "Org Chart",
1682
+ data: { provider: "object", object: "sys_business_unit" },
1683
+ columns: ["name", "kind", "manager_user_id", "active"],
1684
+ tree: {
1685
+ parentField: "parent_business_unit_id",
1686
+ labelField: "name",
1687
+ fields: ["kind", "manager_user_id", "active"],
1688
+ defaultExpandedDepth: 1
1689
+ },
1690
+ sort: [{ field: "name", order: "asc" }]
1691
+ },
1650
1692
  active: {
1651
1693
  type: "grid",
1652
1694
  name: "active",
1653
1695
  label: "Active",
1654
- data: { provider: "object", object: "sys_department" },
1655
- columns: ["name", "code", "kind", "parent_department_id", "manager_user_id", "effective_from"],
1696
+ data: { provider: "object", object: "sys_business_unit" },
1697
+ columns: ["name", "code", "kind", "parent_business_unit_id", "manager_user_id", "effective_from"],
1656
1698
  filter: [{ field: "active", operator: "equals", value: true }],
1657
1699
  sort: [{ field: "name", order: "asc" }],
1658
1700
  pagination: { pageSize: 100 }
@@ -1661,7 +1703,7 @@ var SysDepartment = ObjectSchema.create({
1661
1703
  type: "grid",
1662
1704
  name: "inactive",
1663
1705
  label: "Inactive",
1664
- data: { provider: "object", object: "sys_department" },
1706
+ data: { provider: "object", object: "sys_business_unit" },
1665
1707
  columns: ["name", "code", "kind", "effective_to"],
1666
1708
  filter: [{ field: "active", operator: "equals", value: false }],
1667
1709
  sort: [{ field: "effective_to", order: "desc" }],
@@ -1671,8 +1713,8 @@ var SysDepartment = ObjectSchema.create({
1671
1713
  type: "grid",
1672
1714
  name: "by_kind",
1673
1715
  label: "By Kind",
1674
- data: { provider: "object", object: "sys_department" },
1675
- columns: ["kind", "name", "code", "parent_department_id", "manager_user_id", "active"],
1716
+ data: { provider: "object", object: "sys_business_unit" },
1717
+ columns: ["kind", "name", "code", "parent_business_unit_id", "manager_user_id", "active"],
1676
1718
  sort: [{ field: "kind", order: "asc" }, { field: "name", order: "asc" }],
1677
1719
  grouping: { fields: [{ field: "kind", order: "asc", collapsed: false }] },
1678
1720
  pagination: { pageSize: 100 }
@@ -1681,8 +1723,8 @@ var SysDepartment = ObjectSchema.create({
1681
1723
  type: "grid",
1682
1724
  name: "all_departments",
1683
1725
  label: "All",
1684
- data: { provider: "object", object: "sys_department" },
1685
- columns: ["name", "code", "kind", "parent_department_id", "manager_user_id", "active"],
1726
+ data: { provider: "object", object: "sys_business_unit" },
1727
+ columns: ["name", "code", "kind", "parent_business_unit_id", "manager_user_id", "active"],
1686
1728
  sort: [{ field: "name", order: "asc" }],
1687
1729
  pagination: { pageSize: 100 }
1688
1730
  }
@@ -1705,7 +1747,7 @@ var SysDepartment = ObjectSchema.create({
1705
1747
  group: "Identity"
1706
1748
  }),
1707
1749
  kind: Field.select(
1708
- ["company", "division", "department", "team", "office", "cost_center"],
1750
+ ["company", "division", "department", "office", "cost_center"],
1709
1751
  {
1710
1752
  label: "Kind",
1711
1753
  required: true,
@@ -1715,23 +1757,28 @@ var SysDepartment = ObjectSchema.create({
1715
1757
  }
1716
1758
  ),
1717
1759
  // ── Hierarchy ────────────────────────────────────────────────
1718
- parent_department_id: Field.lookup("sys_department", {
1719
- label: "Parent Department",
1760
+ parent_business_unit_id: Field.lookup("sys_business_unit", {
1761
+ label: "Parent Business Unit",
1720
1762
  required: false,
1721
1763
  description: "Self-reference for the org tree. Null = root of tenant.",
1722
1764
  group: "Hierarchy"
1723
1765
  }),
1724
1766
  organization_id: Field.lookup("sys_organization", {
1725
1767
  label: "Organization",
1726
- required: true,
1727
- description: "Tenant scope.",
1768
+ // Optional: single-tenant deployments have no organization row (org-scoping
1769
+ // is multi-tenant-only, nothing auto-stamps one) — requiring it would make
1770
+ // the object uncreatable single-tenant. In multi-tenant, OrgScopingPlugin
1771
+ // auto-stamps this from the active tenant and tenant-isolation RLS hides any
1772
+ // null-org row (fail-closed). ADR-0057 addendum.
1773
+ required: false,
1774
+ description: "Tenant scope. Null in single-tenant; auto-stamped in multi-tenant.",
1728
1775
  group: "Hierarchy"
1729
1776
  }),
1730
1777
  // ── Leadership ───────────────────────────────────────────────
1731
1778
  manager_user_id: Field.lookup("sys_user", {
1732
- label: "Department Head",
1779
+ label: "Business Unit Head",
1733
1780
  required: false,
1734
- description: "User responsible for this org unit (department head / lead).",
1781
+ description: "User responsible for this org unit (business unit head / lead).",
1735
1782
  group: "Leadership"
1736
1783
  }),
1737
1784
  // ── Lifecycle ────────────────────────────────────────────────
@@ -1745,13 +1792,13 @@ var SysDepartment = ObjectSchema.create({
1745
1792
  effective_from: Field.datetime({
1746
1793
  label: "Effective From",
1747
1794
  required: false,
1748
- description: "When this department came into existence (HRIS sync).",
1795
+ description: "When this business unit came into existence (HRIS sync).",
1749
1796
  group: "Lifecycle"
1750
1797
  }),
1751
1798
  effective_to: Field.datetime({
1752
1799
  label: "Effective To",
1753
1800
  required: false,
1754
- description: "When this department was retired (HRIS sync).",
1801
+ description: "When this business unit was retired (HRIS sync).",
1755
1802
  group: "Lifecycle"
1756
1803
  }),
1757
1804
  external_ref: Field.text({
@@ -1763,7 +1810,7 @@ var SysDepartment = ObjectSchema.create({
1763
1810
  }),
1764
1811
  // ── System ───────────────────────────────────────────────────
1765
1812
  id: Field.text({
1766
- label: "Department ID",
1813
+ label: "Business Unit ID",
1767
1814
  required: true,
1768
1815
  readonly: true,
1769
1816
  group: "System"
@@ -1783,7 +1830,7 @@ var SysDepartment = ObjectSchema.create({
1783
1830
  },
1784
1831
  indexes: [
1785
1832
  { fields: ["organization_id"] },
1786
- { fields: ["parent_department_id"] },
1833
+ { fields: ["parent_business_unit_id"] },
1787
1834
  { fields: ["code", "organization_id"], unique: true },
1788
1835
  { fields: ["active"] }
1789
1836
  ],
@@ -1796,16 +1843,16 @@ var SysDepartment = ObjectSchema.create({
1796
1843
  mru: false
1797
1844
  }
1798
1845
  });
1799
- var SysDepartmentMember = ObjectSchema.create({
1800
- name: "sys_department_member",
1801
- label: "Department Member",
1802
- pluralLabel: "Department Members",
1846
+ var SysBusinessUnitMember = ObjectSchema.create({
1847
+ name: "sys_business_unit_member",
1848
+ label: "Business Unit Member",
1849
+ pluralLabel: "Business Unit Members",
1803
1850
  icon: "user-cog",
1804
1851
  isSystem: true,
1805
1852
  managedBy: "platform",
1806
- description: "User assignment to a department (matrix-org friendly, effective-dated).",
1807
- titleFormat: "{user_id} in {department_id}",
1808
- compactLayout: ["user_id", "department_id", "role_in_department", "is_primary"],
1853
+ description: "User assignment to a business unit (matrix-org friendly, effective-dated).",
1854
+ titleFormat: "{user_id} in {business_unit_id}",
1855
+ compactLayout: ["user_id", "business_unit_id", "role_in_business_unit", "is_primary"],
1809
1856
  fields: {
1810
1857
  id: Field.text({
1811
1858
  label: "Member ID",
@@ -1813,8 +1860,8 @@ var SysDepartmentMember = ObjectSchema.create({
1813
1860
  readonly: true,
1814
1861
  group: "System"
1815
1862
  }),
1816
- department_id: Field.lookup("sys_department", {
1817
- label: "Department",
1863
+ business_unit_id: Field.lookup("sys_business_unit", {
1864
+ label: "Business Unit",
1818
1865
  required: true,
1819
1866
  group: "Assignment"
1820
1867
  }),
@@ -1823,10 +1870,10 @@ var SysDepartmentMember = ObjectSchema.create({
1823
1870
  required: true,
1824
1871
  group: "Assignment"
1825
1872
  }),
1826
- role_in_department: Field.select(
1873
+ role_in_business_unit: Field.select(
1827
1874
  ["member", "lead", "deputy"],
1828
1875
  {
1829
- label: "Role in Department",
1876
+ label: "Role in Business Unit",
1830
1877
  required: false,
1831
1878
  defaultValue: "member",
1832
1879
  description: "`lead` is the day-to-day head; `deputy` may stand in for the lead in approval routing.",
@@ -1837,7 +1884,7 @@ var SysDepartmentMember = ObjectSchema.create({
1837
1884
  label: "Primary Assignment",
1838
1885
  required: false,
1839
1886
  defaultValue: true,
1840
- description: "When the user is in multiple departments, this marks the canonical one for reporting.",
1887
+ description: "When the user is in multiple business units, this marks the canonical one for reporting.",
1841
1888
  group: "Assignment"
1842
1889
  }),
1843
1890
  effective_from: Field.datetime({
@@ -1864,7 +1911,7 @@ var SysDepartmentMember = ObjectSchema.create({
1864
1911
  })
1865
1912
  },
1866
1913
  indexes: [
1867
- { fields: ["department_id", "user_id"], unique: true },
1914
+ { fields: ["business_unit_id", "user_id"], unique: true },
1868
1915
  { fields: ["user_id"] },
1869
1916
  { fields: ["is_primary"] }
1870
1917
  ],
@@ -4563,10 +4610,10 @@ var SETUP_NAV_CONTRIBUTIONS = [
4563
4610
  priority: BASE_PRIORITY,
4564
4611
  items: [
4565
4612
  { id: "nav_users", type: "object", label: "Users", objectName: "sys_user", icon: "user" },
4566
- { id: "nav_departments", type: "object", label: "Departments", objectName: "sys_department", icon: "building", requiresObject: "sys_department" },
4613
+ { id: "nav_business_units", type: "object", label: "Business Units", objectName: "sys_business_unit", icon: "building", requiresObject: "sys_business_unit" },
4567
4614
  { id: "nav_teams", type: "object", label: "Teams", objectName: "sys_team", icon: "users-round" },
4568
- { id: "nav_organizations", type: "object", label: "Organizations", objectName: "sys_organization", icon: "building-2" },
4569
- { id: "nav_invitations", type: "object", label: "Invitations", objectName: "sys_invitation", icon: "mail" }
4615
+ { id: "nav_organizations", type: "object", label: "Organizations", objectName: "sys_organization", icon: "building-2", requiresService: "org-scoping" },
4616
+ { id: "nav_invitations", type: "object", label: "Invitations", objectName: "sys_invitation", icon: "mail", requiresService: "org-scoping" }
4570
4617
  ]
4571
4618
  },
4572
4619
  {
@@ -5300,6 +5347,12 @@ var enObjects = {
5300
5347
  image: {
5301
5348
  label: "Profile Image"
5302
5349
  },
5350
+ manager_id: {
5351
+ label: "Manager"
5352
+ },
5353
+ primary_business_unit_id: {
5354
+ label: "Primary Business Unit"
5355
+ },
5303
5356
  id: {
5304
5357
  label: "User ID"
5305
5358
  },
@@ -5832,9 +5885,9 @@ var enObjects = {
5832
5885
  }
5833
5886
  }
5834
5887
  },
5835
- sys_department: {
5836
- label: "Department",
5837
- pluralLabel: "Departments",
5888
+ sys_business_unit: {
5889
+ label: "Business Unit",
5890
+ pluralLabel: "Business Units",
5838
5891
  description: "Hierarchical org-skeleton node (department / division / business unit / office).",
5839
5892
  fields: {
5840
5893
  name: {
@@ -5851,13 +5904,12 @@ var enObjects = {
5851
5904
  company: "company",
5852
5905
  division: "division",
5853
5906
  department: "department",
5854
- team: "team",
5855
5907
  office: "office",
5856
5908
  cost_center: "cost_center"
5857
5909
  }
5858
5910
  },
5859
- parent_department_id: {
5860
- label: "Parent Department",
5911
+ parent_business_unit_id: {
5912
+ label: "Parent Business Unit",
5861
5913
  help: "Self-reference for the org tree. Null = root of tenant."
5862
5914
  },
5863
5915
  organization_id: {
@@ -5865,8 +5917,8 @@ var enObjects = {
5865
5917
  help: "Tenant scope."
5866
5918
  },
5867
5919
  manager_user_id: {
5868
- label: "Department Head",
5869
- help: "User responsible for this org unit (department head / lead)."
5920
+ label: "Business Unit Head",
5921
+ help: "User responsible for this org unit (business unit head / lead)."
5870
5922
  },
5871
5923
  active: {
5872
5924
  label: "Active",
@@ -5874,18 +5926,18 @@ var enObjects = {
5874
5926
  },
5875
5927
  effective_from: {
5876
5928
  label: "Effective From",
5877
- help: "When this department came into existence (HRIS sync)."
5929
+ help: "When this business unit came into existence (HRIS sync)."
5878
5930
  },
5879
5931
  effective_to: {
5880
5932
  label: "Effective To",
5881
- help: "When this department was retired (HRIS sync)."
5933
+ help: "When this business unit was retired (HRIS sync)."
5882
5934
  },
5883
5935
  external_ref: {
5884
5936
  label: "External Reference",
5885
5937
  help: "ID in upstream HRIS (Workday / SAP HR / \u5317\u68EE)."
5886
5938
  },
5887
5939
  id: {
5888
- label: "Department ID"
5940
+ label: "Business Unit ID"
5889
5941
  },
5890
5942
  created_at: {
5891
5943
  label: "Created At"
@@ -5909,22 +5961,22 @@ var enObjects = {
5909
5961
  }
5910
5962
  }
5911
5963
  },
5912
- sys_department_member: {
5913
- label: "Department Member",
5914
- pluralLabel: "Department Members",
5915
- description: "User assignment to a department (matrix-org friendly, effective-dated).",
5964
+ sys_business_unit_member: {
5965
+ label: "Business Unit Member",
5966
+ pluralLabel: "Business Unit Members",
5967
+ description: "User assignment to a business unit (matrix-org friendly, effective-dated).",
5916
5968
  fields: {
5917
5969
  id: {
5918
5970
  label: "Member ID"
5919
5971
  },
5920
- department_id: {
5921
- label: "Department"
5972
+ business_unit_id: {
5973
+ label: "Business Unit"
5922
5974
  },
5923
5975
  user_id: {
5924
5976
  label: "User"
5925
5977
  },
5926
- role_in_department: {
5927
- label: "Role in Department",
5978
+ role_in_business_unit: {
5979
+ label: "Role in Business Unit",
5928
5980
  help: "`lead` is the day-to-day head; `deputy` may stand in for the lead in approval routing.",
5929
5981
  options: {
5930
5982
  member: "member",
@@ -7876,7 +7928,7 @@ var en = {
7876
7928
  nav_marketplace_installed: { label: "Installed Apps" },
7877
7929
  // People & Organization
7878
7930
  nav_users: { label: "Users" },
7879
- nav_departments: { label: "Departments" },
7931
+ nav_business_units: { label: "Business Units" },
7880
7932
  nav_teams: { label: "Teams" },
7881
7933
  nav_organizations: { label: "Organizations" },
7882
7934
  nav_invitations: { label: "Invitations" },
@@ -8041,6 +8093,12 @@ var zhCNObjects = {
8041
8093
  image: {
8042
8094
  label: "\u5934\u50CF"
8043
8095
  },
8096
+ manager_id: {
8097
+ label: "\u7ECF\u7406"
8098
+ },
8099
+ primary_business_unit_id: {
8100
+ label: "\u4E3B\u5C5E\u4E1A\u52A1\u5355\u5143"
8101
+ },
8044
8102
  id: {
8045
8103
  label: "\u7528\u6237 ID"
8046
8104
  },
@@ -8573,9 +8631,9 @@ var zhCNObjects = {
8573
8631
  }
8574
8632
  }
8575
8633
  },
8576
- sys_department: {
8577
- label: "\u90E8\u95E8",
8578
- pluralLabel: "\u90E8\u95E8",
8634
+ sys_business_unit: {
8635
+ label: "\u4E1A\u52A1\u5355\u5143",
8636
+ pluralLabel: "\u4E1A\u52A1\u5355\u5143",
8579
8637
  description: "\u5C42\u7EA7\u5316\u7EC4\u7EC7\u9AA8\u67B6\u8282\u70B9\uFF08\u90E8\u95E8 / \u4E8B\u4E1A\u90E8 / \u4E1A\u52A1\u5355\u5143 / \u529E\u516C\u5730\u70B9\uFF09\u3002",
8580
8638
  fields: {
8581
8639
  name: {
@@ -8592,13 +8650,12 @@ var zhCNObjects = {
8592
8650
  company: "\u516C\u53F8",
8593
8651
  division: "\u4E8B\u4E1A\u90E8",
8594
8652
  department: "\u90E8\u95E8",
8595
- team: "\u56E2\u961F",
8596
8653
  office: "\u529E\u516C\u5730\u70B9",
8597
8654
  cost_center: "\u6210\u672C\u4E2D\u5FC3"
8598
8655
  }
8599
8656
  },
8600
- parent_department_id: {
8601
- label: "\u4E0A\u7EA7\u90E8\u95E8",
8657
+ parent_business_unit_id: {
8658
+ label: "\u4E0A\u7EA7\u4E1A\u52A1\u5355\u5143",
8602
8659
  help: "\u7EC4\u7EC7\u6811\u7684\u81EA\u5173\u8054\u5B57\u6BB5\u3002Null \u8868\u793A\u79DF\u6237\u6839\u8282\u70B9\u3002"
8603
8660
  },
8604
8661
  organization_id: {
@@ -8606,27 +8663,27 @@ var zhCNObjects = {
8606
8663
  help: "\u79DF\u6237\u8303\u56F4\u3002"
8607
8664
  },
8608
8665
  manager_user_id: {
8609
- label: "\u90E8\u95E8\u8D1F\u8D23\u4EBA",
8610
- help: "\u8D1F\u8D23\u8BE5\u7EC4\u7EC7\u5355\u5143\u7684\u7528\u6237\uFF08\u90E8\u95E8\u8D1F\u8D23\u4EBA / lead\uFF09\u3002"
8666
+ label: "\u4E1A\u52A1\u5355\u5143\u8D1F\u8D23\u4EBA",
8667
+ help: "\u8D1F\u8D23\u8BE5\u7EC4\u7EC7\u5355\u5143\u7684\u7528\u6237\uFF08\u4E1A\u52A1\u5355\u5143\u8D1F\u8D23\u4EBA / lead\uFF09\u3002"
8611
8668
  },
8612
8669
  active: {
8613
8670
  label: "\u542F\u7528",
8614
- help: "\u4E3A false \u65F6\uFF0C\u56FE\u8C31\u67E5\u8BE2\u4E0D\u4F1A\u5C55\u5F00\u8BE5\u90E8\u95E8\u6210\u5458\u3002"
8671
+ help: "\u4E3A false \u65F6\uFF0C\u56FE\u8C31\u67E5\u8BE2\u4E0D\u4F1A\u5C55\u5F00\u8BE5\u4E1A\u52A1\u5355\u5143\u6210\u5458\u3002"
8615
8672
  },
8616
8673
  effective_from: {
8617
8674
  label: "\u751F\u6548\u65F6\u95F4",
8618
- help: "\u8BE5\u90E8\u95E8\u751F\u6548\u7684\u65F6\u95F4\uFF08HRIS \u540C\u6B65\uFF09\u3002"
8675
+ help: "\u8BE5\u4E1A\u52A1\u5355\u5143\u751F\u6548\u7684\u65F6\u95F4\uFF08HRIS \u540C\u6B65\uFF09\u3002"
8619
8676
  },
8620
8677
  effective_to: {
8621
8678
  label: "\u5931\u6548\u65F6\u95F4",
8622
- help: "\u8BE5\u90E8\u95E8\u505C\u7528\u7684\u65F6\u95F4\uFF08HRIS \u540C\u6B65\uFF09\u3002"
8679
+ help: "\u8BE5\u4E1A\u52A1\u5355\u5143\u505C\u7528\u7684\u65F6\u95F4\uFF08HRIS \u540C\u6B65\uFF09\u3002"
8623
8680
  },
8624
8681
  external_ref: {
8625
8682
  label: "\u5916\u90E8\u5F15\u7528",
8626
8683
  help: "\u4E0A\u6E38 HRIS \u4E2D\u7684 ID\uFF08Workday / SAP HR / \u5317\u68EE\uFF09\u3002"
8627
8684
  },
8628
8685
  id: {
8629
- label: "\u90E8\u95E8 ID"
8686
+ label: "\u4E1A\u52A1\u5355\u5143 ID"
8630
8687
  },
8631
8688
  created_at: {
8632
8689
  label: "\u521B\u5EFA\u65F6\u95F4"
@@ -8650,22 +8707,22 @@ var zhCNObjects = {
8650
8707
  }
8651
8708
  }
8652
8709
  },
8653
- sys_department_member: {
8654
- label: "\u90E8\u95E8\u6210\u5458",
8655
- pluralLabel: "\u90E8\u95E8\u6210\u5458",
8656
- description: "\u7528\u6237\u5230\u90E8\u95E8\u7684\u4EFB\u804C\u5173\u7CFB\uFF08\u9002\u914D\u77E9\u9635\u7EC4\u7EC7\u5E76\u652F\u6301\u751F\u6548\u65F6\u95F4\uFF09\u3002",
8710
+ sys_business_unit_member: {
8711
+ label: "\u4E1A\u52A1\u5355\u5143\u6210\u5458",
8712
+ pluralLabel: "\u4E1A\u52A1\u5355\u5143\u6210\u5458",
8713
+ description: "\u7528\u6237\u5230\u4E1A\u52A1\u5355\u5143\u7684\u4EFB\u804C\u5173\u7CFB\uFF08\u9002\u914D\u77E9\u9635\u7EC4\u7EC7\u5E76\u652F\u6301\u751F\u6548\u65F6\u95F4\uFF09\u3002",
8657
8714
  fields: {
8658
8715
  id: {
8659
8716
  label: "\u6210\u5458 ID"
8660
8717
  },
8661
- department_id: {
8662
- label: "\u90E8\u95E8"
8718
+ business_unit_id: {
8719
+ label: "\u4E1A\u52A1\u5355\u5143"
8663
8720
  },
8664
8721
  user_id: {
8665
8722
  label: "\u7528\u6237"
8666
8723
  },
8667
- role_in_department: {
8668
- label: "\u90E8\u95E8\u5185\u89D2\u8272",
8724
+ role_in_business_unit: {
8725
+ label: "\u4E1A\u52A1\u5355\u5143\u5185\u89D2\u8272",
8669
8726
  help: "`lead` \u8868\u793A\u65E5\u5E38\u8D1F\u8D23\u4EBA\uFF1B`deputy` \u53EF\u5728\u5BA1\u6279\u8DEF\u7531\u4E2D\u4EE3\u66FF\u8D1F\u8D23\u4EBA\u3002",
8670
8727
  options: {
8671
8728
  member: "\u6210\u5458",
@@ -8675,7 +8732,7 @@ var zhCNObjects = {
8675
8732
  },
8676
8733
  is_primary: {
8677
8734
  label: "\u4E3B\u4EFB\u804C",
8678
- help: "\u5F53\u7528\u6237\u5C5E\u4E8E\u591A\u4E2A\u90E8\u95E8\u65F6\uFF0C\u7528\u4E8E\u6807\u8BB0\u62A5\u8868\u4E0A\u7684\u4E3B\u90E8\u95E8\u3002"
8735
+ help: "\u5F53\u7528\u6237\u5C5E\u4E8E\u591A\u4E2A\u4E1A\u52A1\u5355\u5143\u65F6\uFF0C\u7528\u4E8E\u6807\u8BB0\u62A5\u8868\u4E0A\u7684\u4E3B\u4E1A\u52A1\u5355\u5143\u3002"
8679
8736
  },
8680
8737
  effective_from: {
8681
8738
  label: "\u751F\u6548\u65F6\u95F4"
@@ -10613,7 +10670,7 @@ var zhCN = {
10613
10670
  group_advanced: { label: "\u9AD8\u7EA7" },
10614
10671
  nav_system_overview: { label: "\u7CFB\u7EDF\u6982\u89C8" },
10615
10672
  nav_users: { label: "\u7528\u6237" },
10616
- nav_departments: { label: "\u90E8\u95E8" },
10673
+ nav_business_units: { label: "\u4E1A\u52A1\u5355\u5143" },
10617
10674
  nav_teams: { label: "\u56E2\u961F" },
10618
10675
  nav_organizations: { label: "\u7EC4\u7EC7" },
10619
10676
  nav_invitations: { label: "\u9080\u8BF7" },
@@ -10742,6 +10799,12 @@ var jaJPObjects = {
10742
10799
  image: {
10743
10800
  label: "\u30D7\u30ED\u30D5\u30A3\u30FC\u30EB\u753B\u50CF"
10744
10801
  },
10802
+ manager_id: {
10803
+ label: "\u30DE\u30CD\u30FC\u30B8\u30E3\u30FC"
10804
+ },
10805
+ primary_business_unit_id: {
10806
+ label: "\u4E3B\u6240\u5C5E\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8"
10807
+ },
10745
10808
  id: {
10746
10809
  label: "\u30E6\u30FC\u30B6\u30FC ID"
10747
10810
  },
@@ -11274,9 +11337,9 @@ var jaJPObjects = {
11274
11337
  }
11275
11338
  }
11276
11339
  },
11277
- sys_department: {
11278
- label: "\u90E8\u9580",
11279
- pluralLabel: "\u90E8\u9580",
11340
+ sys_business_unit: {
11341
+ label: "\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8",
11342
+ pluralLabel: "\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8",
11280
11343
  description: "\u968E\u5C64\u7684\u306A\u7D44\u7E54\u30C4\u30EA\u30FC\u30CE\u30FC\u30C9\uFF08\u90E8\u9580 / \u4E8B\u696D\u90E8 / \u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8 / \u30AA\u30D5\u30A3\u30B9\uFF09\u3002",
11281
11344
  fields: {
11282
11345
  name: {
@@ -11293,13 +11356,12 @@ var jaJPObjects = {
11293
11356
  company: "\u4F1A\u793E",
11294
11357
  division: "\u4E8B\u696D\u90E8",
11295
11358
  department: "\u90E8\u9580",
11296
- team: "\u30C1\u30FC\u30E0",
11297
11359
  office: "\u30AA\u30D5\u30A3\u30B9",
11298
11360
  cost_center: "\u30B3\u30B9\u30C8\u30BB\u30F3\u30BF\u30FC"
11299
11361
  }
11300
11362
  },
11301
- parent_department_id: {
11302
- label: "\u89AA\u90E8\u9580",
11363
+ parent_business_unit_id: {
11364
+ label: "\u89AA\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8",
11303
11365
  help: "\u7D44\u7E54\u30C4\u30EA\u30FC\u306E\u81EA\u5DF1\u53C2\u7167\u3002null = \u30C6\u30CA\u30F3\u30C8\u306E\u30EB\u30FC\u30C8\u3002"
11304
11366
  },
11305
11367
  organization_id: {
@@ -11307,8 +11369,8 @@ var jaJPObjects = {
11307
11369
  help: "\u30C6\u30CA\u30F3\u30C8\u30B9\u30B3\u30FC\u30D7\u3002"
11308
11370
  },
11309
11371
  manager_user_id: {
11310
- label: "\u90E8\u9580\u9577",
11311
- help: "\u3053\u306E\u7D44\u7E54\u5358\u4F4D\u306E\u8CAC\u4EFB\u8005\uFF08\u90E8\u9580\u9577 / \u30EA\u30FC\u30C9\uFF09\u3002"
11372
+ label: "\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8\u9577",
11373
+ help: "\u3053\u306E\u7D44\u7E54\u5358\u4F4D\u306E\u8CAC\u4EFB\u8005\uFF08\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8\u9577 / \u30EA\u30FC\u30C9\uFF09\u3002"
11312
11374
  },
11313
11375
  active: {
11314
11376
  label: "\u6709\u52B9",
@@ -11316,18 +11378,18 @@ var jaJPObjects = {
11316
11378
  },
11317
11379
  effective_from: {
11318
11380
  label: "\u6709\u52B9\u958B\u59CB\u65E5",
11319
- help: "\u3053\u306E\u90E8\u9580\u304C\u8A2D\u7ACB\u3055\u308C\u305F\u65E5\u6642\uFF08HRIS \u540C\u671F\uFF09\u3002"
11381
+ help: "\u3053\u306E\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8\u304C\u8A2D\u7ACB\u3055\u308C\u305F\u65E5\u6642\uFF08HRIS \u540C\u671F\uFF09\u3002"
11320
11382
  },
11321
11383
  effective_to: {
11322
11384
  label: "\u6709\u52B9\u7D42\u4E86\u65E5",
11323
- help: "\u3053\u306E\u90E8\u9580\u304C\u5EC3\u6B62\u3055\u308C\u305F\u65E5\u6642\uFF08HRIS \u540C\u671F\uFF09\u3002"
11385
+ help: "\u3053\u306E\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8\u304C\u5EC3\u6B62\u3055\u308C\u305F\u65E5\u6642\uFF08HRIS \u540C\u671F\uFF09\u3002"
11324
11386
  },
11325
11387
  external_ref: {
11326
11388
  label: "\u5916\u90E8\u53C2\u7167",
11327
11389
  help: "\u4E0A\u6D41 HRIS\uFF08Workday / SAP HR / \u5317\u68EE\uFF09\u306E ID\u3002"
11328
11390
  },
11329
11391
  id: {
11330
- label: "\u90E8\u9580 ID"
11392
+ label: "\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8 ID"
11331
11393
  },
11332
11394
  created_at: {
11333
11395
  label: "\u4F5C\u6210\u65E5\u6642"
@@ -11351,22 +11413,22 @@ var jaJPObjects = {
11351
11413
  }
11352
11414
  }
11353
11415
  },
11354
- sys_department_member: {
11355
- label: "\u90E8\u9580\u30E1\u30F3\u30D0\u30FC",
11356
- pluralLabel: "\u90E8\u9580\u30E1\u30F3\u30D0\u30FC",
11357
- description: "\u90E8\u9580\u3078\u306E\u30E6\u30FC\u30B6\u30FC\u5272\u308A\u5F53\u3066\uFF08\u30DE\u30C8\u30EA\u30AF\u30B9\u7D44\u7E54\u5BFE\u5FDC\u3001\u6709\u52B9\u671F\u9650\u4ED8\u304D\uFF09\u3002",
11416
+ sys_business_unit_member: {
11417
+ label: "\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8\u30E1\u30F3\u30D0\u30FC",
11418
+ pluralLabel: "\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8\u30E1\u30F3\u30D0\u30FC",
11419
+ description: "\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8\u3078\u306E\u30E6\u30FC\u30B6\u30FC\u5272\u308A\u5F53\u3066\uFF08\u30DE\u30C8\u30EA\u30AF\u30B9\u7D44\u7E54\u5BFE\u5FDC\u3001\u6709\u52B9\u671F\u9650\u4ED8\u304D\uFF09\u3002",
11358
11420
  fields: {
11359
11421
  id: {
11360
11422
  label: "\u30E1\u30F3\u30D0\u30FC ID"
11361
11423
  },
11362
- department_id: {
11363
- label: "\u90E8\u9580"
11424
+ business_unit_id: {
11425
+ label: "\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8"
11364
11426
  },
11365
11427
  user_id: {
11366
11428
  label: "\u30E6\u30FC\u30B6\u30FC"
11367
11429
  },
11368
- role_in_department: {
11369
- label: "\u90E8\u9580\u5185\u30ED\u30FC\u30EB",
11430
+ role_in_business_unit: {
11431
+ label: "\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8\u5185\u30ED\u30FC\u30EB",
11370
11432
  help: "`lead` \u306F\u65E5\u5E38\u306E\u8CAC\u4EFB\u8005\u3001`deputy` \u306F\u627F\u8A8D\u30EB\u30FC\u30C6\u30A3\u30F3\u30B0\u3067\u30EA\u30FC\u30C9\u306E\u4EE3\u7406\u3092\u52D9\u3081\u308B\u5834\u5408\u304C\u3042\u308A\u307E\u3059\u3002",
11371
11433
  options: {
11372
11434
  member: "\u30E1\u30F3\u30D0\u30FC",
@@ -11376,7 +11438,7 @@ var jaJPObjects = {
11376
11438
  },
11377
11439
  is_primary: {
11378
11440
  label: "\u4E3B\u8981\u5272\u308A\u5F53\u3066",
11379
- help: "\u30E6\u30FC\u30B6\u30FC\u304C\u8907\u6570\u306E\u90E8\u9580\u306B\u6240\u5C5E\u3059\u308B\u5834\u5408\u3001\u30EC\u30DD\u30FC\u30C6\u30A3\u30F3\u30B0\u306E\u6B63\u898F\u90E8\u9580\u3092\u30DE\u30FC\u30AF\u3057\u307E\u3059\u3002"
11441
+ help: "\u30E6\u30FC\u30B6\u30FC\u304C\u8907\u6570\u306E\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8\u306B\u6240\u5C5E\u3059\u308B\u5834\u5408\u3001\u30EC\u30DD\u30FC\u30C6\u30A3\u30F3\u30B0\u306E\u6B63\u898F\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8\u3092\u30DE\u30FC\u30AF\u3057\u307E\u3059\u3002"
11380
11442
  },
11381
11443
  effective_from: {
11382
11444
  label: "\u6709\u52B9\u958B\u59CB\u65E5"
@@ -13314,7 +13376,7 @@ var jaJP = {
13314
13376
  group_advanced: { label: "\u8A73\u7D30" },
13315
13377
  nav_system_overview: { label: "\u30B7\u30B9\u30C6\u30E0\u6982\u8981" },
13316
13378
  nav_users: { label: "\u30E6\u30FC\u30B6\u30FC" },
13317
- nav_departments: { label: "\u90E8\u7F72" },
13379
+ nav_business_units: { label: "\u30D3\u30B8\u30CD\u30B9\u30E6\u30CB\u30C3\u30C8" },
13318
13380
  nav_teams: { label: "\u30C1\u30FC\u30E0" },
13319
13381
  nav_organizations: { label: "\u7D44\u7E54" },
13320
13382
  nav_invitations: { label: "\u62DB\u5F85" },
@@ -13443,6 +13505,12 @@ var esESObjects = {
13443
13505
  image: {
13444
13506
  label: "Imagen de perfil"
13445
13507
  },
13508
+ manager_id: {
13509
+ label: "Gerente"
13510
+ },
13511
+ primary_business_unit_id: {
13512
+ label: "Unidad de negocio principal"
13513
+ },
13446
13514
  id: {
13447
13515
  label: "ID de usuario"
13448
13516
  },
@@ -13975,9 +14043,9 @@ var esESObjects = {
13975
14043
  }
13976
14044
  }
13977
14045
  },
13978
- sys_department: {
13979
- label: "Departamento",
13980
- pluralLabel: "Departamentos",
14046
+ sys_business_unit: {
14047
+ label: "Unidad de negocio",
14048
+ pluralLabel: "Unidades de negocio",
13981
14049
  description: "Nodo jer\xE1rquico de la estructura organizativa (departamento / divisi\xF3n / unidad de negocio / oficina).",
13982
14050
  fields: {
13983
14051
  name: {
@@ -13994,13 +14062,12 @@ var esESObjects = {
13994
14062
  company: "Empresa",
13995
14063
  division: "Divisi\xF3n",
13996
14064
  department: "Departamento",
13997
- team: "Equipo",
13998
14065
  office: "Oficina",
13999
14066
  cost_center: "Centro de coste"
14000
14067
  }
14001
14068
  },
14002
- parent_department_id: {
14003
- label: "Departamento principal",
14069
+ parent_business_unit_id: {
14070
+ label: "Unidad de negocio principal",
14004
14071
  help: "Autorreferencia para el \xE1rbol organizativo. Null = ra\xEDz del tenant."
14005
14072
  },
14006
14073
  organization_id: {
@@ -14052,21 +14119,21 @@ var esESObjects = {
14052
14119
  }
14053
14120
  }
14054
14121
  },
14055
- sys_department_member: {
14056
- label: "Miembro del departamento",
14057
- pluralLabel: "Miembros del departamento",
14122
+ sys_business_unit_member: {
14123
+ label: "Miembro de unidad de negocio",
14124
+ pluralLabel: "Miembros de unidad de negocio",
14058
14125
  description: "Asignaci\xF3n de usuario a un departamento (compatible con organizaciones matriciales y con vigencia temporal).",
14059
14126
  fields: {
14060
14127
  id: {
14061
14128
  label: "ID de miembro"
14062
14129
  },
14063
- department_id: {
14064
- label: "Departamento"
14130
+ business_unit_id: {
14131
+ label: "Unidad de negocio"
14065
14132
  },
14066
14133
  user_id: {
14067
14134
  label: "Usuario"
14068
14135
  },
14069
- role_in_department: {
14136
+ role_in_business_unit: {
14070
14137
  label: "Rol en el departamento",
14071
14138
  help: "`lead` es el responsable del d\xEDa a d\xEDa; `deputy` puede sustituir al responsable en el enrutamiento de aprobaciones.",
14072
14139
  options: {
@@ -16015,7 +16082,7 @@ var esES = {
16015
16082
  group_advanced: { label: "Avanzado" },
16016
16083
  nav_system_overview: { label: "Resumen del Sistema" },
16017
16084
  nav_users: { label: "Usuarios" },
16018
- nav_departments: { label: "Departamentos" },
16085
+ nav_business_units: { label: "Unidades de negocio" },
16019
16086
  nav_teams: { label: "Equipos" },
16020
16087
  nav_organizations: { label: "Organizaciones" },
16021
16088
  nav_invitations: { label: "Invitaciones" },
@@ -23088,6 +23155,6 @@ function createPlatformObjectsPlugin() {
23088
23155
  return new PlatformObjectsPlugin();
23089
23156
  }
23090
23157
 
23091
- export { ACCOUNT_APP, MetadataFormsTranslations, PlatformObjectsPlugin, SETUP_APP, SETUP_NAV_CONTRIBUTIONS, STUDIO_APP, SetupAppTranslations, SysAccount, SysApiKey, SysAttachment, SysDepartment, SysDepartmentMember, SysDeviceCode, SysEmail, SysEmailTemplate, SysInvitation, SysJob, SysJobQueue, SysJobRun, SysJwks, SysMember, SysNotification, SysOauthAccessToken, SysOauthApplication, SysOauthConsent, SysOauthRefreshToken, SysOrganization, SysOrganizationDetailPage, SysReportSchedule, SysSavedReport, SysSecret, SysSession, SysSetting, SysSettingAudit, SysTeam, SysTeamMember, SysTwoFactor, SysUser, SysUserDetailPage, SysUserPreference, SysVerification, SystemOverviewDashboard, SystemOverviewDatasets, createPlatformObjectsPlugin, en, esES, jaJP, zhCN };
23158
+ export { ACCOUNT_APP, MetadataFormsTranslations, PlatformObjectsPlugin, SETUP_APP, SETUP_NAV_CONTRIBUTIONS, STUDIO_APP, SetupAppTranslations, SysAccount, SysApiKey, SysAttachment, SysBusinessUnit, SysBusinessUnitMember, SysDeviceCode, SysEmail, SysEmailTemplate, SysInvitation, SysJob, SysJobQueue, SysJobRun, SysJwks, SysMember, SysNotification, SysOauthAccessToken, SysOauthApplication, SysOauthConsent, SysOauthRefreshToken, SysOrganization, SysOrganizationDetailPage, SysReportSchedule, SysSavedReport, SysSecret, SysSession, SysSetting, SysSettingAudit, SysTeam, SysTeamMember, SysTwoFactor, SysUser, SysUserDetailPage, SysUserPreference, SysVerification, SystemOverviewDashboard, SystemOverviewDatasets, createPlatformObjectsPlugin, en, esES, jaJP, zhCN };
23092
23159
  //# sourceMappingURL=index.mjs.map
23093
23160
  //# sourceMappingURL=index.mjs.map