shutro-erp 0.3.2 → 0.3.4
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/account_portal/.kosh/bindings.js +1 -1
- package/dist/account_portal/.kosh/schema.d.ts +156 -1
- package/dist/accounting/.kosh/bindings.js +1 -1
- package/dist/accounting/.kosh/schema.d.ts +156 -1
- package/dist/assistant/index.js +1 -1
- package/dist/contacts/.kosh/bindings.js +1 -1
- package/dist/contacts/.kosh/schema.d.ts +156 -1
- package/dist/integrations/index.js +12 -0
- package/dist/integrations/web/OAuthAppsPage.d.ts +9 -0
- package/dist/integrations/web/OAuthAppsPage.js +79 -0
- package/dist/integrations/web/index.d.ts +1 -0
- package/dist/integrations/web/index.js +3 -0
- package/dist/integrations/web/messages.js +58 -0
- package/dist/l10n_bd/.kosh/bindings.js +1 -1
- package/dist/l10n_bd/.kosh/schema.d.ts +156 -1
- package/dist/l10n_in/.kosh/bindings.js +1 -1
- package/dist/l10n_in/.kosh/schema.d.ts +156 -4
- package/dist/l10n_in/module.d.ts +0 -62
- package/dist/l10n_in/module.js +2 -4
- package/dist/messaging/web/index.js +1 -1
- package/dist/notify/web/index.js +1 -1
- package/dist/payment/.kosh/bindings.js +1 -1
- package/dist/payment/.kosh/schema.d.ts +157 -2
- package/dist/payment/bkash.d.ts +28 -0
- package/dist/payment/bkash.js +169 -0
- package/dist/payment/index.d.ts +4 -0
- package/dist/payment/index.js +80 -24
- package/dist/payment/module.d.ts +7 -4
- package/dist/payment/module.js +3 -0
- package/dist/payment/money.d.ts +7 -0
- package/dist/payment/money.js +37 -0
- package/dist/payment/providers.d.ts +13 -2
- package/dist/payment/razorpay.d.ts +12 -0
- package/dist/payment/razorpay.js +149 -0
- package/dist/payment/sslcommerz.js +1 -1
- package/dist/payment/stripe.d.ts +15 -0
- package/dist/payment/stripe.js +182 -0
- package/dist/permissions/admin.d.ts +3 -0
- package/dist/permissions/admin.js +108 -10
- package/dist/permissions/index.d.ts +1 -0
- package/dist/permissions/index.js +3 -0
- package/dist/permissions/roles.d.ts +2 -0
- package/dist/permissions/roles.js +236 -0
- package/dist/portal/.kosh/bindings.js +1 -1
- package/dist/portal/.kosh/schema.d.ts +156 -1
- package/dist/product/.kosh/bindings.js +1 -1
- package/dist/product/.kosh/schema.d.ts +156 -1
- package/dist/project/.kosh/bindings.js +1 -1
- package/dist/project/.kosh/schema.d.ts +156 -1
- package/dist/project_portal/.kosh/bindings.js +1 -1
- package/dist/project_portal/.kosh/schema.d.ts +156 -1
- package/dist/purchase/.kosh/bindings.js +1 -1
- package/dist/purchase/.kosh/schema.d.ts +156 -1
- package/dist/purchase_account/.kosh/bindings.js +1 -1
- package/dist/purchase_account/.kosh/schema.d.ts +156 -1
- package/dist/purchase_portal/.kosh/bindings.js +1 -1
- package/dist/purchase_portal/.kosh/schema.d.ts +156 -1
- package/dist/sale_account/.kosh/bindings.js +1 -1
- package/dist/sale_account/.kosh/schema.d.ts +156 -1
- package/dist/sale_portal/.kosh/bindings.js +1 -1
- package/dist/sale_portal/.kosh/schema.d.ts +156 -1
- package/dist/sale_project/.kosh/bindings.js +1 -1
- package/dist/sale_project/.kosh/schema.d.ts +156 -1
- package/dist/sales/.kosh/bindings.js +1 -1
- package/dist/sales/.kosh/schema.d.ts +156 -1
- package/dist/server/auth/base.js +98 -0
- package/dist/server/auth/oauth.d.ts +21 -0
- package/dist/server/auth/oauth.js +579 -0
- package/dist/server/auth/routes.d.ts +3 -0
- package/dist/server/auth/routes.js +29 -0
- package/dist/server/auth/service.d.ts +56 -0
- package/dist/server/auth/service.js +185 -3
- package/dist/server/identity.d.ts +4 -0
- package/dist/server/images.d.ts +12 -0
- package/dist/server/images.js +139 -0
- package/dist/server/index.d.ts +2 -1
- package/dist/server/index.js +1 -0
- package/dist/server/server.d.ts +4 -0
- package/dist/server/server.js +20 -4
- package/dist/settings/company.d.ts +34 -0
- package/dist/settings/company.js +189 -0
- package/dist/settings/index.d.ts +10 -10
- package/dist/settings/index.js +159 -30
- package/dist/settings/people.d.ts +16 -0
- package/dist/settings/people.js +507 -0
- package/dist/settings/security.d.ts +13 -0
- package/dist/settings/security.js +158 -0
- package/dist/settings/web/AuditPage.d.ts +8 -0
- package/dist/settings/web/AuditPage.js +74 -0
- package/dist/settings/web/CompaniesPage.d.ts +8 -0
- package/dist/settings/web/CompaniesPage.js +52 -0
- package/dist/settings/web/CompanyPage.d.ts +9 -0
- package/dist/settings/web/CompanyPage.js +105 -0
- package/dist/settings/web/ConnectedAppsPage.d.ts +7 -0
- package/dist/settings/web/ConnectedAppsPage.js +33 -0
- package/dist/settings/web/OverviewPage.d.ts +9 -0
- package/dist/settings/web/OverviewPage.js +77 -0
- package/dist/settings/web/PeoplePage.d.ts +9 -0
- package/dist/settings/web/PeoplePage.js +154 -0
- package/dist/settings/web/ProfilePage.d.ts +14 -0
- package/dist/settings/web/ProfilePage.js +196 -0
- package/dist/settings/web/RolesEditor.d.ts +35 -0
- package/dist/settings/web/RolesEditor.js +49 -0
- package/dist/settings/web/RolesPage.d.ts +9 -0
- package/dist/settings/web/RolesPage.js +296 -0
- package/dist/settings/web/SecurityPage.d.ts +8 -0
- package/dist/settings/web/SecurityPage.js +81 -0
- package/dist/settings/web/index.d.ts +10 -0
- package/dist/settings/web/index.js +31 -1
- package/dist/settings/web/messages.js +594 -0
- package/dist/ui/api.d.ts +8 -0
- package/dist/ui/app.d.ts +5 -0
- package/dist/ui/app.js +143 -33
- package/dist/ui/components/AppIcon.js +11 -1
- package/dist/ui/components/Avatar.d.ts +21 -0
- package/dist/ui/components/Avatar.js +71 -0
- package/dist/ui/components/primitives.d.ts +9 -1
- package/dist/ui/components/primitives.js +12 -4
- package/dist/ui/context.d.ts +10 -1
- package/dist/ui/context.js +60 -2
- package/dist/ui/i18n/messages.d.ts +76 -0
- package/dist/ui/i18n/messages.js +152 -0
- package/dist/ui/index.d.ts +3 -1
- package/dist/ui/index.js +3 -1
- package/dist/ui/lib/accent.d.ts +13 -0
- package/dist/ui/lib/accent.js +36 -0
- package/dist/ui/registry.d.ts +7 -1
- package/dist/ui/registry.js +10 -1
- package/dist/ui/search/ViewTabs.d.ts +14 -0
- package/dist/ui/search/ViewTabs.js +42 -0
- package/dist/ui/shell/Activate.d.ts +6 -0
- package/dist/ui/shell/Activate.js +39 -0
- package/dist/ui/shell/CommandPalette.d.ts +7 -1
- package/dist/ui/shell/CommandPalette.js +16 -2
- package/dist/ui/shell/Consent.d.ts +5 -0
- package/dist/ui/shell/Consent.js +35 -0
- package/dist/ui/shell/Home.js +85 -16
- package/dist/ui/shell/Sidebar.d.ts +27 -0
- package/dist/ui/shell/Sidebar.js +77 -0
- package/dist/ui/shell/TwoFactorSetup.d.ts +5 -0
- package/dist/ui/shell/TwoFactorSetup.js +32 -0
- package/dist/ui/shell/shortcuts.d.ts +3 -0
- package/dist/ui/shell/shortcuts.js +13 -4
- package/dist/ui/styles.css +70 -28
- package/dist/ui/views/DateField.d.ts +10 -0
- package/dist/ui/views/DateField.js +129 -0
- package/dist/ui/views/FormView.js +161 -21
- package/dist/ui/views/ListView.d.ts +2 -0
- package/dist/ui/views/ListView.js +57 -25
- package/dist/ui/views/StatusChip.d.ts +10 -0
- package/dist/ui/views/StatusChip.js +22 -0
- package/dist/ui/views/widgets.d.ts +3 -0
- package/dist/ui/views/widgets.js +26 -8
- package/dist/views/types.d.ts +7 -0
- package/dist/views/validate.js +4 -0
- package/package.json +2 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash:
|
|
1
|
+
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: b86e876d4a603b3c
|
|
2
2
|
// Bindings of module `account_portal`: import the definition API from here to get types scoped to what it can see.
|
|
3
3
|
export { defineModel, defineModule, extendModel, f, replace } from '../../server/orm.js';
|
|
4
4
|
import { definitions } from '../../server/orm.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash:
|
|
1
|
+
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: b86e876d4a603b3c
|
|
2
2
|
// Schema view of module `account_portal` (RFC 0002 §7.7): the models it owns or depends on, with the extensions it can see.
|
|
3
3
|
import type { F } from '../../server/orm.js';
|
|
4
4
|
|
|
@@ -24,9 +24,11 @@ export interface SchemaView {
|
|
|
24
24
|
readonly 'audit.event': AuditEvent;
|
|
25
25
|
readonly 'auth.api_key': AuthApiKey;
|
|
26
26
|
readonly 'auth.credential': AuthCredential;
|
|
27
|
+
readonly 'auth.policy': AuthPolicy;
|
|
27
28
|
readonly 'auth.session': AuthSession;
|
|
28
29
|
readonly 'auth.user_grant': AuthUserGrant;
|
|
29
30
|
readonly 'auth.user_group': AuthUserGroup;
|
|
31
|
+
readonly 'kosh.image': KoshImage;
|
|
30
32
|
readonly 'kosh.saved_view': KoshSavedView;
|
|
31
33
|
readonly 'mail.activity': MailActivity;
|
|
32
34
|
readonly 'mail.activity.type': MailActivityType;
|
|
@@ -35,6 +37,10 @@ export interface SchemaView {
|
|
|
35
37
|
readonly 'mail.follower': MailFollower;
|
|
36
38
|
readonly 'mail.message': MailMessage;
|
|
37
39
|
readonly 'mail.message.reaction': MailMessageReaction;
|
|
40
|
+
readonly 'oauth.app': OauthApp;
|
|
41
|
+
readonly 'oauth.code': OauthCode;
|
|
42
|
+
readonly 'oauth.grant': OauthGrant;
|
|
43
|
+
readonly 'oauth.token': OauthToken;
|
|
38
44
|
readonly 'portal.announcement': PortalAnnouncement;
|
|
39
45
|
readonly 'portal.invitation': PortalInvitation;
|
|
40
46
|
readonly 'portal.signature': PortalSignature;
|
|
@@ -634,6 +640,26 @@ export interface AuthCredential {
|
|
|
634
640
|
export interface AuthCredentialMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.credential'> {
|
|
635
641
|
}
|
|
636
642
|
|
|
643
|
+
/** `auth.policy` (owner: base). */
|
|
644
|
+
export interface AuthPolicy {
|
|
645
|
+
readonly name: 'auth.policy';
|
|
646
|
+
readonly fields: {
|
|
647
|
+
readonly id: F.Id<'auth.policy'>;
|
|
648
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
649
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
650
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
651
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
652
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
653
|
+
readonly twoFactor: F.Selection<'administrators' | 'everyone', { readonly required: true; readonly default: true }>;
|
|
654
|
+
readonly sessionDays: F.Integer;
|
|
655
|
+
};
|
|
656
|
+
readonly methods: AuthPolicyMethods;
|
|
657
|
+
}
|
|
658
|
+
|
|
659
|
+
/** Methods of `auth.policy`: declared ones and transitions. */
|
|
660
|
+
export interface AuthPolicyMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.policy'> {
|
|
661
|
+
}
|
|
662
|
+
|
|
637
663
|
/** `auth.session` (owner: base). */
|
|
638
664
|
export interface AuthSession {
|
|
639
665
|
readonly name: 'auth.session';
|
|
@@ -706,6 +732,29 @@ export interface AuthUserGroup {
|
|
|
706
732
|
export interface AuthUserGroupMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.user_group'> {
|
|
707
733
|
}
|
|
708
734
|
|
|
735
|
+
/** `kosh.image` (owner: base). */
|
|
736
|
+
export interface KoshImage {
|
|
737
|
+
readonly name: 'kosh.image';
|
|
738
|
+
readonly fields: {
|
|
739
|
+
readonly id: F.Id<'kosh.image'>;
|
|
740
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
741
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
742
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
743
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
744
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
745
|
+
readonly ownerModel: F.Char<{ readonly required: true }>;
|
|
746
|
+
readonly ownerId: F.Integer<{ readonly required: true }>;
|
|
747
|
+
readonly mime: F.Char<{ readonly required: true }>;
|
|
748
|
+
readonly data: F.Text<{ readonly required: true }>;
|
|
749
|
+
readonly hash: F.Char<{ readonly required: true }>;
|
|
750
|
+
};
|
|
751
|
+
readonly methods: KoshImageMethods;
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
/** Methods of `kosh.image`: declared ones and transitions. */
|
|
755
|
+
export interface KoshImageMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'kosh.image'> {
|
|
756
|
+
}
|
|
757
|
+
|
|
709
758
|
/** `kosh.saved_view` (owner: base). */
|
|
710
759
|
export interface KoshSavedView {
|
|
711
760
|
readonly name: 'kosh.saved_view';
|
|
@@ -908,6 +957,105 @@ export interface MailMessageReaction {
|
|
|
908
957
|
export interface MailMessageReactionMethods extends F.Methods<typeof import('../../messaging/index.js').messagingShutro, 'mail.message.reaction'> {
|
|
909
958
|
}
|
|
910
959
|
|
|
960
|
+
/** `oauth.app` (owner: base). */
|
|
961
|
+
export interface OauthApp {
|
|
962
|
+
readonly name: 'oauth.app';
|
|
963
|
+
readonly fields: {
|
|
964
|
+
readonly id: F.Id<'oauth.app'>;
|
|
965
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
966
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
967
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
968
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
969
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
970
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
971
|
+
readonly clientId: F.Char<{ readonly required: true }>;
|
|
972
|
+
readonly secretHash: F.Char;
|
|
973
|
+
readonly confidential: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
974
|
+
readonly redirectUris: F.Text<{ readonly required: true }>;
|
|
975
|
+
readonly scopes: F.Char<{ readonly required: true }>;
|
|
976
|
+
readonly homepage: F.Char;
|
|
977
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
978
|
+
readonly owner: F.Many2one<'res.users'>;
|
|
979
|
+
};
|
|
980
|
+
readonly methods: OauthAppMethods;
|
|
981
|
+
}
|
|
982
|
+
|
|
983
|
+
/** Methods of `oauth.app`: declared ones and transitions. */
|
|
984
|
+
export interface OauthAppMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.app'> {
|
|
985
|
+
}
|
|
986
|
+
|
|
987
|
+
/** `oauth.code` (owner: base). */
|
|
988
|
+
export interface OauthCode {
|
|
989
|
+
readonly name: 'oauth.code';
|
|
990
|
+
readonly fields: {
|
|
991
|
+
readonly id: F.Id<'oauth.code'>;
|
|
992
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
993
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
994
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
995
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
996
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
997
|
+
readonly codeHash: F.Char<{ readonly required: true }>;
|
|
998
|
+
readonly grant: F.Many2one<'oauth.grant', { readonly required: true }>;
|
|
999
|
+
readonly redirectUri: F.Char<{ readonly required: true }>;
|
|
1000
|
+
readonly challenge: F.Char;
|
|
1001
|
+
readonly expiresAt: F.Datetime<{ readonly required: true }>;
|
|
1002
|
+
readonly used: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1003
|
+
};
|
|
1004
|
+
readonly methods: OauthCodeMethods;
|
|
1005
|
+
}
|
|
1006
|
+
|
|
1007
|
+
/** Methods of `oauth.code`: declared ones and transitions. */
|
|
1008
|
+
export interface OauthCodeMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.code'> {
|
|
1009
|
+
}
|
|
1010
|
+
|
|
1011
|
+
/** `oauth.grant` (owner: base). */
|
|
1012
|
+
export interface OauthGrant {
|
|
1013
|
+
readonly name: 'oauth.grant';
|
|
1014
|
+
readonly fields: {
|
|
1015
|
+
readonly id: F.Id<'oauth.grant'>;
|
|
1016
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1017
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1018
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1019
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1020
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1021
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
1022
|
+
readonly app: F.Many2one<'oauth.app', { readonly required: true }>;
|
|
1023
|
+
readonly scopes: F.Char<{ readonly required: true }>;
|
|
1024
|
+
readonly revoked: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1025
|
+
readonly lastUsedAt: F.Datetime;
|
|
1026
|
+
};
|
|
1027
|
+
readonly methods: OauthGrantMethods;
|
|
1028
|
+
}
|
|
1029
|
+
|
|
1030
|
+
/** Methods of `oauth.grant`: declared ones and transitions. */
|
|
1031
|
+
export interface OauthGrantMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.grant'> {
|
|
1032
|
+
}
|
|
1033
|
+
|
|
1034
|
+
/** `oauth.token` (owner: base). */
|
|
1035
|
+
export interface OauthToken {
|
|
1036
|
+
readonly name: 'oauth.token';
|
|
1037
|
+
readonly fields: {
|
|
1038
|
+
readonly id: F.Id<'oauth.token'>;
|
|
1039
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1040
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1041
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1042
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1043
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1044
|
+
readonly grant: F.Many2one<'oauth.grant', { readonly required: true }>;
|
|
1045
|
+
readonly accessHash: F.Char<{ readonly required: true }>;
|
|
1046
|
+
readonly refreshHash: F.Char<{ readonly required: true }>;
|
|
1047
|
+
readonly accessExpiresAt: F.Datetime<{ readonly required: true }>;
|
|
1048
|
+
readonly refreshExpiresAt: F.Datetime<{ readonly required: true }>;
|
|
1049
|
+
readonly revoked: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1050
|
+
readonly rotated: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1051
|
+
};
|
|
1052
|
+
readonly methods: OauthTokenMethods;
|
|
1053
|
+
}
|
|
1054
|
+
|
|
1055
|
+
/** Methods of `oauth.token`: declared ones and transitions. */
|
|
1056
|
+
export interface OauthTokenMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.token'> {
|
|
1057
|
+
}
|
|
1058
|
+
|
|
911
1059
|
/** `portal.announcement` (owner: portal). */
|
|
912
1060
|
export interface PortalAnnouncement {
|
|
913
1061
|
readonly name: 'portal.announcement';
|
|
@@ -1200,6 +1348,13 @@ export interface ResCompany {
|
|
|
1200
1348
|
readonly name: F.Char<{ readonly required: true }>;
|
|
1201
1349
|
readonly currency: F.Many2one<'res.currency', { readonly required: true }>;
|
|
1202
1350
|
readonly numberGrouping: F.Selection<'international' | 'lakh', { readonly required: true; readonly default: true }>;
|
|
1351
|
+
readonly accentColor: F.Char;
|
|
1352
|
+
readonly street: F.Char;
|
|
1353
|
+
readonly city: F.Char;
|
|
1354
|
+
readonly zip: F.Char;
|
|
1355
|
+
readonly email: F.Char;
|
|
1356
|
+
readonly phone: F.Char;
|
|
1357
|
+
readonly website: F.Char;
|
|
1203
1358
|
readonly fiscalYearStart: F.Integer<{ readonly required: true; readonly default: true }>; // accounting
|
|
1204
1359
|
readonly chartTemplate: F.Char; // accounting
|
|
1205
1360
|
readonly country: F.Char; // accounting
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash:
|
|
1
|
+
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: c9101ef07bbb3e64
|
|
2
2
|
// Bindings of module `accounting`: import the definition API from here to get types scoped to what it can see.
|
|
3
3
|
export { defineModel, defineModule, extendModel, f, replace } from '../../server/orm.js';
|
|
4
4
|
import { definitions } from '../../server/orm.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash:
|
|
1
|
+
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: c9101ef07bbb3e64
|
|
2
2
|
// Schema view of module `accounting` (RFC 0002 §7.7): the models it owns or depends on, with the extensions it can see.
|
|
3
3
|
import type { F } from '../../server/orm.js';
|
|
4
4
|
|
|
@@ -24,9 +24,11 @@ export interface SchemaView {
|
|
|
24
24
|
readonly 'audit.event': AuditEvent;
|
|
25
25
|
readonly 'auth.api_key': AuthApiKey;
|
|
26
26
|
readonly 'auth.credential': AuthCredential;
|
|
27
|
+
readonly 'auth.policy': AuthPolicy;
|
|
27
28
|
readonly 'auth.session': AuthSession;
|
|
28
29
|
readonly 'auth.user_grant': AuthUserGrant;
|
|
29
30
|
readonly 'auth.user_group': AuthUserGroup;
|
|
31
|
+
readonly 'kosh.image': KoshImage;
|
|
30
32
|
readonly 'kosh.saved_view': KoshSavedView;
|
|
31
33
|
readonly 'mail.activity': MailActivity;
|
|
32
34
|
readonly 'mail.activity.type': MailActivityType;
|
|
@@ -35,6 +37,10 @@ export interface SchemaView {
|
|
|
35
37
|
readonly 'mail.follower': MailFollower;
|
|
36
38
|
readonly 'mail.message': MailMessage;
|
|
37
39
|
readonly 'mail.message.reaction': MailMessageReaction;
|
|
40
|
+
readonly 'oauth.app': OauthApp;
|
|
41
|
+
readonly 'oauth.code': OauthCode;
|
|
42
|
+
readonly 'oauth.grant': OauthGrant;
|
|
43
|
+
readonly 'oauth.token': OauthToken;
|
|
38
44
|
readonly 'product.category': ProductCategory;
|
|
39
45
|
readonly 'product.product': ProductProduct;
|
|
40
46
|
readonly 'report.dashboard': ReportDashboard;
|
|
@@ -631,6 +637,26 @@ export interface AuthCredential {
|
|
|
631
637
|
export interface AuthCredentialMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.credential'> {
|
|
632
638
|
}
|
|
633
639
|
|
|
640
|
+
/** `auth.policy` (owner: base). */
|
|
641
|
+
export interface AuthPolicy {
|
|
642
|
+
readonly name: 'auth.policy';
|
|
643
|
+
readonly fields: {
|
|
644
|
+
readonly id: F.Id<'auth.policy'>;
|
|
645
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
646
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
647
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
648
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
649
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
650
|
+
readonly twoFactor: F.Selection<'administrators' | 'everyone', { readonly required: true; readonly default: true }>;
|
|
651
|
+
readonly sessionDays: F.Integer;
|
|
652
|
+
};
|
|
653
|
+
readonly methods: AuthPolicyMethods;
|
|
654
|
+
}
|
|
655
|
+
|
|
656
|
+
/** Methods of `auth.policy`: declared ones and transitions. */
|
|
657
|
+
export interface AuthPolicyMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.policy'> {
|
|
658
|
+
}
|
|
659
|
+
|
|
634
660
|
/** `auth.session` (owner: base). */
|
|
635
661
|
export interface AuthSession {
|
|
636
662
|
readonly name: 'auth.session';
|
|
@@ -703,6 +729,29 @@ export interface AuthUserGroup {
|
|
|
703
729
|
export interface AuthUserGroupMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.user_group'> {
|
|
704
730
|
}
|
|
705
731
|
|
|
732
|
+
/** `kosh.image` (owner: base). */
|
|
733
|
+
export interface KoshImage {
|
|
734
|
+
readonly name: 'kosh.image';
|
|
735
|
+
readonly fields: {
|
|
736
|
+
readonly id: F.Id<'kosh.image'>;
|
|
737
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
738
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
739
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
740
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
741
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
742
|
+
readonly ownerModel: F.Char<{ readonly required: true }>;
|
|
743
|
+
readonly ownerId: F.Integer<{ readonly required: true }>;
|
|
744
|
+
readonly mime: F.Char<{ readonly required: true }>;
|
|
745
|
+
readonly data: F.Text<{ readonly required: true }>;
|
|
746
|
+
readonly hash: F.Char<{ readonly required: true }>;
|
|
747
|
+
};
|
|
748
|
+
readonly methods: KoshImageMethods;
|
|
749
|
+
}
|
|
750
|
+
|
|
751
|
+
/** Methods of `kosh.image`: declared ones and transitions. */
|
|
752
|
+
export interface KoshImageMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'kosh.image'> {
|
|
753
|
+
}
|
|
754
|
+
|
|
706
755
|
/** `kosh.saved_view` (owner: base). */
|
|
707
756
|
export interface KoshSavedView {
|
|
708
757
|
readonly name: 'kosh.saved_view';
|
|
@@ -905,6 +954,105 @@ export interface MailMessageReaction {
|
|
|
905
954
|
export interface MailMessageReactionMethods extends F.Methods<typeof import('../../messaging/index.js').messagingShutro, 'mail.message.reaction'> {
|
|
906
955
|
}
|
|
907
956
|
|
|
957
|
+
/** `oauth.app` (owner: base). */
|
|
958
|
+
export interface OauthApp {
|
|
959
|
+
readonly name: 'oauth.app';
|
|
960
|
+
readonly fields: {
|
|
961
|
+
readonly id: F.Id<'oauth.app'>;
|
|
962
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
963
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
964
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
965
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
966
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
967
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
968
|
+
readonly clientId: F.Char<{ readonly required: true }>;
|
|
969
|
+
readonly secretHash: F.Char;
|
|
970
|
+
readonly confidential: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
971
|
+
readonly redirectUris: F.Text<{ readonly required: true }>;
|
|
972
|
+
readonly scopes: F.Char<{ readonly required: true }>;
|
|
973
|
+
readonly homepage: F.Char;
|
|
974
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
975
|
+
readonly owner: F.Many2one<'res.users'>;
|
|
976
|
+
};
|
|
977
|
+
readonly methods: OauthAppMethods;
|
|
978
|
+
}
|
|
979
|
+
|
|
980
|
+
/** Methods of `oauth.app`: declared ones and transitions. */
|
|
981
|
+
export interface OauthAppMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.app'> {
|
|
982
|
+
}
|
|
983
|
+
|
|
984
|
+
/** `oauth.code` (owner: base). */
|
|
985
|
+
export interface OauthCode {
|
|
986
|
+
readonly name: 'oauth.code';
|
|
987
|
+
readonly fields: {
|
|
988
|
+
readonly id: F.Id<'oauth.code'>;
|
|
989
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
990
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
991
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
992
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
993
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
994
|
+
readonly codeHash: F.Char<{ readonly required: true }>;
|
|
995
|
+
readonly grant: F.Many2one<'oauth.grant', { readonly required: true }>;
|
|
996
|
+
readonly redirectUri: F.Char<{ readonly required: true }>;
|
|
997
|
+
readonly challenge: F.Char;
|
|
998
|
+
readonly expiresAt: F.Datetime<{ readonly required: true }>;
|
|
999
|
+
readonly used: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1000
|
+
};
|
|
1001
|
+
readonly methods: OauthCodeMethods;
|
|
1002
|
+
}
|
|
1003
|
+
|
|
1004
|
+
/** Methods of `oauth.code`: declared ones and transitions. */
|
|
1005
|
+
export interface OauthCodeMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.code'> {
|
|
1006
|
+
}
|
|
1007
|
+
|
|
1008
|
+
/** `oauth.grant` (owner: base). */
|
|
1009
|
+
export interface OauthGrant {
|
|
1010
|
+
readonly name: 'oauth.grant';
|
|
1011
|
+
readonly fields: {
|
|
1012
|
+
readonly id: F.Id<'oauth.grant'>;
|
|
1013
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1014
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1015
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1016
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1017
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1018
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
1019
|
+
readonly app: F.Many2one<'oauth.app', { readonly required: true }>;
|
|
1020
|
+
readonly scopes: F.Char<{ readonly required: true }>;
|
|
1021
|
+
readonly revoked: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1022
|
+
readonly lastUsedAt: F.Datetime;
|
|
1023
|
+
};
|
|
1024
|
+
readonly methods: OauthGrantMethods;
|
|
1025
|
+
}
|
|
1026
|
+
|
|
1027
|
+
/** Methods of `oauth.grant`: declared ones and transitions. */
|
|
1028
|
+
export interface OauthGrantMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.grant'> {
|
|
1029
|
+
}
|
|
1030
|
+
|
|
1031
|
+
/** `oauth.token` (owner: base). */
|
|
1032
|
+
export interface OauthToken {
|
|
1033
|
+
readonly name: 'oauth.token';
|
|
1034
|
+
readonly fields: {
|
|
1035
|
+
readonly id: F.Id<'oauth.token'>;
|
|
1036
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1037
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
1038
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1039
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
1040
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
1041
|
+
readonly grant: F.Many2one<'oauth.grant', { readonly required: true }>;
|
|
1042
|
+
readonly accessHash: F.Char<{ readonly required: true }>;
|
|
1043
|
+
readonly refreshHash: F.Char<{ readonly required: true }>;
|
|
1044
|
+
readonly accessExpiresAt: F.Datetime<{ readonly required: true }>;
|
|
1045
|
+
readonly refreshExpiresAt: F.Datetime<{ readonly required: true }>;
|
|
1046
|
+
readonly revoked: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1047
|
+
readonly rotated: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
1048
|
+
};
|
|
1049
|
+
readonly methods: OauthTokenMethods;
|
|
1050
|
+
}
|
|
1051
|
+
|
|
1052
|
+
/** Methods of `oauth.token`: declared ones and transitions. */
|
|
1053
|
+
export interface OauthTokenMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.token'> {
|
|
1054
|
+
}
|
|
1055
|
+
|
|
908
1056
|
/** `product.category` (owner: product). */
|
|
909
1057
|
export interface ProductCategory {
|
|
910
1058
|
readonly name: 'product.category';
|
|
@@ -1125,6 +1273,13 @@ export interface ResCompany {
|
|
|
1125
1273
|
readonly name: F.Char<{ readonly required: true }>;
|
|
1126
1274
|
readonly currency: F.Many2one<'res.currency', { readonly required: true }>;
|
|
1127
1275
|
readonly numberGrouping: F.Selection<'international' | 'lakh', { readonly required: true; readonly default: true }>;
|
|
1276
|
+
readonly accentColor: F.Char;
|
|
1277
|
+
readonly street: F.Char;
|
|
1278
|
+
readonly city: F.Char;
|
|
1279
|
+
readonly zip: F.Char;
|
|
1280
|
+
readonly email: F.Char;
|
|
1281
|
+
readonly phone: F.Char;
|
|
1282
|
+
readonly website: F.Char;
|
|
1128
1283
|
readonly fiscalYearStart: F.Integer<{ readonly required: true; readonly default: true }>; // accounting
|
|
1129
1284
|
readonly chartTemplate: F.Char; // accounting
|
|
1130
1285
|
readonly country: F.Char; // accounting
|
package/dist/assistant/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash:
|
|
1
|
+
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 87baf088f27622fd
|
|
2
2
|
// Bindings of module `contacts`: import the definition API from here to get types scoped to what it can see.
|
|
3
3
|
export { defineModel, defineModule, extendModel, f, replace } from '../../server/orm.js';
|
|
4
4
|
import { definitions } from '../../server/orm.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash:
|
|
1
|
+
// GENERATED by `pnpm generate:models` (Shutro’s generator). Do not edit. definitions-hash: 87baf088f27622fd
|
|
2
2
|
// Schema view of module `contacts` (RFC 0002 §7.7): the models it owns or depends on, with the extensions it can see.
|
|
3
3
|
import type { F } from '../../server/orm.js';
|
|
4
4
|
|
|
@@ -7,10 +7,16 @@ export interface SchemaView {
|
|
|
7
7
|
readonly 'audit.event': AuditEvent;
|
|
8
8
|
readonly 'auth.api_key': AuthApiKey;
|
|
9
9
|
readonly 'auth.credential': AuthCredential;
|
|
10
|
+
readonly 'auth.policy': AuthPolicy;
|
|
10
11
|
readonly 'auth.session': AuthSession;
|
|
11
12
|
readonly 'auth.user_grant': AuthUserGrant;
|
|
12
13
|
readonly 'auth.user_group': AuthUserGroup;
|
|
14
|
+
readonly 'kosh.image': KoshImage;
|
|
13
15
|
readonly 'kosh.saved_view': KoshSavedView;
|
|
16
|
+
readonly 'oauth.app': OauthApp;
|
|
17
|
+
readonly 'oauth.code': OauthCode;
|
|
18
|
+
readonly 'oauth.grant': OauthGrant;
|
|
19
|
+
readonly 'oauth.token': OauthToken;
|
|
14
20
|
readonly 'res.company': ResCompany;
|
|
15
21
|
readonly 'res.currency': ResCurrency;
|
|
16
22
|
readonly 'res.partner': ResPartner;
|
|
@@ -94,6 +100,26 @@ export interface AuthCredential {
|
|
|
94
100
|
export interface AuthCredentialMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.credential'> {
|
|
95
101
|
}
|
|
96
102
|
|
|
103
|
+
/** `auth.policy` (owner: base). */
|
|
104
|
+
export interface AuthPolicy {
|
|
105
|
+
readonly name: 'auth.policy';
|
|
106
|
+
readonly fields: {
|
|
107
|
+
readonly id: F.Id<'auth.policy'>;
|
|
108
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
109
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
110
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
111
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
112
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
113
|
+
readonly twoFactor: F.Selection<'administrators' | 'everyone', { readonly required: true; readonly default: true }>;
|
|
114
|
+
readonly sessionDays: F.Integer;
|
|
115
|
+
};
|
|
116
|
+
readonly methods: AuthPolicyMethods;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
/** Methods of `auth.policy`: declared ones and transitions. */
|
|
120
|
+
export interface AuthPolicyMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.policy'> {
|
|
121
|
+
}
|
|
122
|
+
|
|
97
123
|
/** `auth.session` (owner: base). */
|
|
98
124
|
export interface AuthSession {
|
|
99
125
|
readonly name: 'auth.session';
|
|
@@ -166,6 +192,29 @@ export interface AuthUserGroup {
|
|
|
166
192
|
export interface AuthUserGroupMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'auth.user_group'> {
|
|
167
193
|
}
|
|
168
194
|
|
|
195
|
+
/** `kosh.image` (owner: base). */
|
|
196
|
+
export interface KoshImage {
|
|
197
|
+
readonly name: 'kosh.image';
|
|
198
|
+
readonly fields: {
|
|
199
|
+
readonly id: F.Id<'kosh.image'>;
|
|
200
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
201
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
202
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
203
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
204
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
205
|
+
readonly ownerModel: F.Char<{ readonly required: true }>;
|
|
206
|
+
readonly ownerId: F.Integer<{ readonly required: true }>;
|
|
207
|
+
readonly mime: F.Char<{ readonly required: true }>;
|
|
208
|
+
readonly data: F.Text<{ readonly required: true }>;
|
|
209
|
+
readonly hash: F.Char<{ readonly required: true }>;
|
|
210
|
+
};
|
|
211
|
+
readonly methods: KoshImageMethods;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
/** Methods of `kosh.image`: declared ones and transitions. */
|
|
215
|
+
export interface KoshImageMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'kosh.image'> {
|
|
216
|
+
}
|
|
217
|
+
|
|
169
218
|
/** `kosh.saved_view` (owner: base). */
|
|
170
219
|
export interface KoshSavedView {
|
|
171
220
|
readonly name: 'kosh.saved_view';
|
|
@@ -190,6 +239,105 @@ export interface KoshSavedView {
|
|
|
190
239
|
export interface KoshSavedViewMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'kosh.saved_view'> {
|
|
191
240
|
}
|
|
192
241
|
|
|
242
|
+
/** `oauth.app` (owner: base). */
|
|
243
|
+
export interface OauthApp {
|
|
244
|
+
readonly name: 'oauth.app';
|
|
245
|
+
readonly fields: {
|
|
246
|
+
readonly id: F.Id<'oauth.app'>;
|
|
247
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
248
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
249
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
250
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
251
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
252
|
+
readonly name: F.Char<{ readonly required: true }>;
|
|
253
|
+
readonly clientId: F.Char<{ readonly required: true }>;
|
|
254
|
+
readonly secretHash: F.Char;
|
|
255
|
+
readonly confidential: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
256
|
+
readonly redirectUris: F.Text<{ readonly required: true }>;
|
|
257
|
+
readonly scopes: F.Char<{ readonly required: true }>;
|
|
258
|
+
readonly homepage: F.Char;
|
|
259
|
+
readonly active: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
260
|
+
readonly owner: F.Many2one<'res.users'>;
|
|
261
|
+
};
|
|
262
|
+
readonly methods: OauthAppMethods;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
/** Methods of `oauth.app`: declared ones and transitions. */
|
|
266
|
+
export interface OauthAppMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.app'> {
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
/** `oauth.code` (owner: base). */
|
|
270
|
+
export interface OauthCode {
|
|
271
|
+
readonly name: 'oauth.code';
|
|
272
|
+
readonly fields: {
|
|
273
|
+
readonly id: F.Id<'oauth.code'>;
|
|
274
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
275
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
276
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
277
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
278
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
279
|
+
readonly codeHash: F.Char<{ readonly required: true }>;
|
|
280
|
+
readonly grant: F.Many2one<'oauth.grant', { readonly required: true }>;
|
|
281
|
+
readonly redirectUri: F.Char<{ readonly required: true }>;
|
|
282
|
+
readonly challenge: F.Char;
|
|
283
|
+
readonly expiresAt: F.Datetime<{ readonly required: true }>;
|
|
284
|
+
readonly used: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
285
|
+
};
|
|
286
|
+
readonly methods: OauthCodeMethods;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
/** Methods of `oauth.code`: declared ones and transitions. */
|
|
290
|
+
export interface OauthCodeMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.code'> {
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
/** `oauth.grant` (owner: base). */
|
|
294
|
+
export interface OauthGrant {
|
|
295
|
+
readonly name: 'oauth.grant';
|
|
296
|
+
readonly fields: {
|
|
297
|
+
readonly id: F.Id<'oauth.grant'>;
|
|
298
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
299
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
300
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
301
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
302
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
303
|
+
readonly user: F.Many2one<'res.users', { readonly required: true }>;
|
|
304
|
+
readonly app: F.Many2one<'oauth.app', { readonly required: true }>;
|
|
305
|
+
readonly scopes: F.Char<{ readonly required: true }>;
|
|
306
|
+
readonly revoked: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
307
|
+
readonly lastUsedAt: F.Datetime;
|
|
308
|
+
};
|
|
309
|
+
readonly methods: OauthGrantMethods;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
/** Methods of `oauth.grant`: declared ones and transitions. */
|
|
313
|
+
export interface OauthGrantMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.grant'> {
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
/** `oauth.token` (owner: base). */
|
|
317
|
+
export interface OauthToken {
|
|
318
|
+
readonly name: 'oauth.token';
|
|
319
|
+
readonly fields: {
|
|
320
|
+
readonly id: F.Id<'oauth.token'>;
|
|
321
|
+
readonly createdAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
322
|
+
readonly updatedAt: F.Datetime<{ readonly required: true; readonly readonly: true }>;
|
|
323
|
+
readonly createdBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
324
|
+
readonly updatedBy: F.Many2one<'res.users', { readonly readonly: true }>;
|
|
325
|
+
readonly displayName: F.Char<{ readonly required: true; readonly readonly: true; readonly compute: true }>;
|
|
326
|
+
readonly grant: F.Many2one<'oauth.grant', { readonly required: true }>;
|
|
327
|
+
readonly accessHash: F.Char<{ readonly required: true }>;
|
|
328
|
+
readonly refreshHash: F.Char<{ readonly required: true }>;
|
|
329
|
+
readonly accessExpiresAt: F.Datetime<{ readonly required: true }>;
|
|
330
|
+
readonly refreshExpiresAt: F.Datetime<{ readonly required: true }>;
|
|
331
|
+
readonly revoked: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
332
|
+
readonly rotated: F.Bool<{ readonly required: true; readonly default: true }>;
|
|
333
|
+
};
|
|
334
|
+
readonly methods: OauthTokenMethods;
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
/** Methods of `oauth.token`: declared ones and transitions. */
|
|
338
|
+
export interface OauthTokenMethods extends F.Methods<typeof import('../../server/index.js').baseShutro, 'oauth.token'> {
|
|
339
|
+
}
|
|
340
|
+
|
|
193
341
|
/** `res.company` (owner: base). */
|
|
194
342
|
export interface ResCompany {
|
|
195
343
|
readonly name: 'res.company';
|
|
@@ -203,6 +351,13 @@ export interface ResCompany {
|
|
|
203
351
|
readonly name: F.Char<{ readonly required: true }>;
|
|
204
352
|
readonly currency: F.Many2one<'res.currency', { readonly required: true }>;
|
|
205
353
|
readonly numberGrouping: F.Selection<'international' | 'lakh', { readonly required: true; readonly default: true }>;
|
|
354
|
+
readonly accentColor: F.Char;
|
|
355
|
+
readonly street: F.Char;
|
|
356
|
+
readonly city: F.Char;
|
|
357
|
+
readonly zip: F.Char;
|
|
358
|
+
readonly email: F.Char;
|
|
359
|
+
readonly phone: F.Char;
|
|
360
|
+
readonly website: F.Char;
|
|
206
361
|
};
|
|
207
362
|
readonly methods: ResCompanyMethods;
|
|
208
363
|
}
|
|
@@ -299,6 +299,11 @@ export function integrationsModule(options = {}) {
|
|
|
299
299
|
label: 'Inbound calls',
|
|
300
300
|
views: ['list', 'form'],
|
|
301
301
|
}),
|
|
302
|
+
'integrations.action_oauth_apps': {
|
|
303
|
+
type: 'client',
|
|
304
|
+
page: 'integrations.OAuthApps',
|
|
305
|
+
label: 'OAuth apps',
|
|
306
|
+
},
|
|
302
307
|
},
|
|
303
308
|
menus: [
|
|
304
309
|
{ id: 'integrations.root', label: 'Integrations', app: 'integrations' },
|
|
@@ -330,6 +335,13 @@ export function integrationsModule(options = {}) {
|
|
|
330
335
|
action: 'integrations.action_inbound',
|
|
331
336
|
sequence: 4,
|
|
332
337
|
},
|
|
338
|
+
{
|
|
339
|
+
id: 'integrations.oauth_apps',
|
|
340
|
+
parent: 'integrations.root',
|
|
341
|
+
label: 'OAuth apps',
|
|
342
|
+
action: 'integrations.action_oauth_apps',
|
|
343
|
+
sequence: 5,
|
|
344
|
+
},
|
|
333
345
|
],
|
|
334
346
|
views: {
|
|
335
347
|
'webhook.subscription.list': list('webhook.subscription', {
|