@shamar/adonis 0.1.3 → 0.1.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/README.md +75 -2
- package/assets/admin.css +1 -1
- package/dist/auth/ldap.d.ts +115 -0
- package/dist/auth/ldap.d.ts.map +1 -0
- package/dist/auth/ldap.js +275 -0
- package/dist/auth/ldap.js.map +1 -0
- package/dist/auth/masquerade.d.ts +31 -0
- package/dist/auth/masquerade.d.ts.map +1 -0
- package/dist/auth/masquerade.js +36 -0
- package/dist/auth/masquerade.js.map +1 -0
- package/dist/auth_login_view.d.ts +56 -0
- package/dist/auth_login_view.d.ts.map +1 -0
- package/dist/auth_login_view.js +56 -0
- package/dist/auth_login_view.js.map +1 -0
- package/dist/commands/commands.json +1 -0
- package/dist/commands/main.d.ts +4 -0
- package/dist/commands/main.js +36 -0
- package/dist/commands/publish_auth.d.ts +13 -0
- package/dist/commands/publish_auth.d.ts.map +1 -0
- package/dist/commands/publish_auth.js +26 -0
- package/dist/commands/publish_auth.js.map +1 -0
- package/dist/config.d.ts +32 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js.map +1 -1
- package/dist/configure.d.ts +16 -1
- package/dist/configure.d.ts.map +1 -1
- package/dist/configure.js +6 -0
- package/dist/configure.js.map +1 -1
- package/dist/context.d.ts +3 -0
- package/dist/context.d.ts.map +1 -1
- package/dist/controllers/admin_controller.d.ts.map +1 -1
- package/dist/controllers/admin_controller.js +14 -6
- package/dist/controllers/admin_controller.js.map +1 -1
- package/dist/index.d.ts +6 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/publish_auth.d.ts +45 -0
- package/dist/publish_auth.d.ts.map +1 -0
- package/dist/publish_auth.js +69 -0
- package/dist/publish_auth.js.map +1 -0
- package/dist/resources/api_key_resource.d.ts +4 -6
- package/dist/resources/api_key_resource.d.ts.map +1 -1
- package/dist/resources/api_key_resource.js +4 -16
- package/dist/resources/api_key_resource.js.map +1 -1
- package/dist/shamar/auth.d.ts +13 -1
- package/dist/shamar/auth.d.ts.map +1 -1
- package/dist/shamar/auth.js +42 -5
- package/dist/shamar/auth.js.map +1 -1
- package/dist/shamar/relation-fields.d.ts.map +1 -1
- package/dist/shamar/relation-fields.js +3 -2
- package/dist/shamar/relation-fields.js.map +1 -1
- package/dist/shamar/view-context.d.ts +8 -0
- package/dist/shamar/view-context.d.ts.map +1 -1
- package/dist/shamar/view-context.js +1 -0
- package/dist/shamar/view-context.js.map +1 -1
- package/package.json +15 -6
- package/resources/views/shamar/partials/nav.edge +6 -1
- package/resources/views/shamar/partials/shell-open.edge +14 -0
- package/resources/views/shamar/partials/topbar.edge +3 -0
- package/stubs/views/auth/layout.edge +244 -0
- package/stubs/views/auth/login.edge +65 -0
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,KAAK,IAAI,WAAW,EAAqB,MAAM,cAAc,CAAC;AAoIvE,MAAM,UAAU,YAAY,CAAC,MAAoB;IAC/C,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACvC,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,QAAQ;QACjC,SAAS,EAAE,aAAa;QACxB,GAAG,EAAE,OAAO;QACZ,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,EAAE;QACrC,GAAG,MAAM;QACT,MAAM;KACP,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,WAAW,IAAI,KAAK,EAAE,CAAC;AAEhC,SAAS,eAAe,CAAC,MAAoB;IAC3C,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,OAAQ,KAAsB,CAAC,KAAK,KAAK,UAAU;gBAC/D,CAAC,CAAE,KAAsB,CAAC,KAAK,EAAE;gBACjC,CAAC,CAAE,KAAqB,CAAC;YAC3B,OAAO;gBACL,GAAG,KAAK;gBACR,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG;gBAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ;gBAC3C,SAAS,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;aACxC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL;YACE,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,QAAQ;YAC7B,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,SAAS,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;SACzC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/configure.d.ts
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
export declare const stubsRoot: string;
|
|
2
2
|
interface ConfigureCommand {
|
|
3
|
+
logger: {
|
|
4
|
+
info(message: string): void;
|
|
5
|
+
success(message: string): void;
|
|
6
|
+
};
|
|
3
7
|
prompt: {
|
|
4
8
|
choice(message: string, choices: Array<string | {
|
|
5
9
|
name: string;
|
|
@@ -8,13 +12,24 @@ interface ConfigureCommand {
|
|
|
8
12
|
default?: number;
|
|
9
13
|
name?: string;
|
|
10
14
|
}): Promise<string>;
|
|
15
|
+
confirm(title: string, options?: {
|
|
16
|
+
default?: boolean;
|
|
17
|
+
}): Promise<boolean>;
|
|
11
18
|
};
|
|
12
19
|
createCodemods(): Promise<{
|
|
20
|
+
overwriteExisting: boolean;
|
|
13
21
|
updateRcFile(callback: (rcFile: {
|
|
14
22
|
addProvider(provider: string): void;
|
|
23
|
+
addCommand(command: string): void;
|
|
15
24
|
}) => void): Promise<void>;
|
|
16
|
-
makeUsingStub(root: string, stub: string, data: Record<string, unknown>): Promise<
|
|
25
|
+
makeUsingStub(root: string, stub: string, data: Record<string, unknown>): Promise<unknown>;
|
|
17
26
|
}>;
|
|
27
|
+
application?: {
|
|
28
|
+
makePath(...segments: string[]): string;
|
|
29
|
+
};
|
|
30
|
+
app?: {
|
|
31
|
+
makePath(...segments: string[]): string;
|
|
32
|
+
};
|
|
18
33
|
}
|
|
19
34
|
export declare function configure(command: ConfigureCommand): Promise<void>;
|
|
20
35
|
export {};
|
package/dist/configure.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configure.d.ts","sourceRoot":"","sources":["../src/configure.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"configure.d.ts","sourceRoot":"","sources":["../src/configure.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS,QAAsD,CAAC;AAE7E,UAAU,gBAAgB;IACxB,MAAM,EAAE;QACN,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;KAChC,CAAC;IACF,MAAM,EAAE;QACN,MAAM,CACJ,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,KAAK,CAAC,MAAM,GAAG;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC,EAC1D,OAAO,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE,GAC5C,OAAO,CAAC,MAAM,CAAC,CAAC;QACnB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,OAAO,CAAA;SAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KAC3E,CAAC;IACF,cAAc,IAAI,OAAO,CAAC;QACxB,iBAAiB,EAAE,OAAO,CAAC;QAC3B,YAAY,CACV,QAAQ,EAAE,CAAC,MAAM,EAAE;YACjB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;YACpC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;SACnC,KAAK,IAAI,GACT,OAAO,CAAC,IAAI,CAAC,CAAC;QACjB,aAAa,CACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,OAAO,CAAC,CAAC;KACrB,CAAC,CAAC;IACH,WAAW,CAAC,EAAE;QAAE,QAAQ,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;KAAE,CAAC;IAC1D,GAAG,CAAC,EAAE;QAAE,QAAQ,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;KAAE,CAAC;CACnD;AAED,wBAAsB,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiCxE"}
|
package/dist/configure.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { fileURLToPath } from 'node:url';
|
|
2
|
+
import { publishAuthViews } from './publish_auth.js';
|
|
2
3
|
export const stubsRoot = fileURLToPath(new URL('../stubs', import.meta.url));
|
|
3
4
|
export async function configure(command) {
|
|
4
5
|
const orm = await command.prompt.choice('Which ORM should Shamar use for resources?', [
|
|
@@ -11,10 +12,15 @@ export async function configure(command) {
|
|
|
11
12
|
message: 'Mongoose (MongoDB)',
|
|
12
13
|
},
|
|
13
14
|
], { default: 0, name: 'orm' });
|
|
15
|
+
const publishLogin = await command.prompt.confirm('Publish opinionated Shamar login page?', { default: true });
|
|
14
16
|
const codemods = await command.createCodemods();
|
|
15
17
|
await codemods.updateRcFile((rcFile) => {
|
|
16
18
|
rcFile.addProvider('@shamar/adonis/provider');
|
|
19
|
+
rcFile.addCommand('@shamar/adonis/commands');
|
|
17
20
|
});
|
|
18
21
|
await codemods.makeUsingStub(stubsRoot, 'config/shamar.stub', { orm });
|
|
22
|
+
if (publishLogin) {
|
|
23
|
+
await publishAuthViews(command, { skipConfirm: true });
|
|
24
|
+
}
|
|
19
25
|
}
|
|
20
26
|
//# sourceMappingURL=configure.js.map
|
package/dist/configure.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configure.js","sourceRoot":"","sources":["../src/configure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"configure.js","sourceRoot":"","sources":["../src/configure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,CAAC,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAiC7E,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,OAAyB;IACvD,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,CACrC,4CAA4C,EAC5C;QACE;YACE,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,4CAA4C;SACtD;QACD;YACE,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,oBAAoB;SAC9B;KACF,EACD,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAC5B,CAAC;IAEF,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAC/C,wCAAwC,EACxC,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,cAAc,EAAE,CAAC;IAEhD,MAAM,QAAQ,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,EAAE;QACrC,MAAM,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAAC;QAC9C,MAAM,CAAC,UAAU,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,CAAC,aAAa,CAAC,SAAS,EAAE,oBAAoB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAEvE,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,gBAAgB,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;AACH,CAAC"}
|
package/dist/context.d.ts
CHANGED
|
@@ -5,6 +5,9 @@ export interface ShamarHttpContext extends HttpContext {
|
|
|
5
5
|
};
|
|
6
6
|
session: {
|
|
7
7
|
flash(key: string, value: unknown): void;
|
|
8
|
+
get?(key: string): unknown;
|
|
9
|
+
put?(key: string, value: unknown): void;
|
|
10
|
+
forget?(key: string): void;
|
|
8
11
|
flashMessages?: {
|
|
9
12
|
has(key: string): boolean;
|
|
10
13
|
get(key: string): unknown;
|
package/dist/context.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,IAAI,EAAE;QACJ,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KAC5E,CAAC;IACF,OAAO,EAAE;QACP,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;QACzC,aAAa,CAAC,EAAE;YACd,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;YAC1B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;SAC3B,CAAC;KACH,CAAC;CACH;AAED,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,GAAG;IACnD,IAAI,CAAC,EAAE;QACL,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG;YAClB,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAChC,CAAC;KACH,CAAC;CACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,IAAI,EAAE;QACJ,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KAC5E,CAAC;IACF,OAAO,EAAE;QACP,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;QACzC,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QAC3B,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;QACxC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,aAAa,CAAC,EAAE;YACd,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;YAC1B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;SAC3B,CAAC;KACH,CAAC;CACH;AAED,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,GAAG;IACnD,IAAI,CAAC,EAAE;QACL,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG;YAClB,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;SAChC,CAAC;KACH,CAAC;CACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin_controller.d.ts","sourceRoot":"","sources":["../../src/controllers/admin_controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"admin_controller.d.ts","sourceRoot":"","sources":["../../src/controllers/admin_controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { resolveGridItemStyle, isValidationException, relationUsesListTable } from '@shamar/core';
|
|
2
|
+
import { sanitizeStringIds } from '@shamar/cherubim';
|
|
2
3
|
import { Authorizer as AuthorizerClass } from '@shamar/cherubim';
|
|
3
4
|
import { ResourceController } from '../controller.js';
|
|
4
|
-
import { authRequired, assertResourceAccess, buildAuthContext, ForbiddenError, resourcePolicyFlags, respondForbidden, respondUnauthorized, UnauthorizedError, } from '../shamar/auth.js';
|
|
5
|
+
import { authRequired, assertResourceAccess, buildAuthContext, canAccessPanel, ForbiddenError, PANEL_ACCESS_DENIED_MESSAGE, resourcePolicyFlags, respondForbidden, respondUnauthorized, UnauthorizedError, } from '../shamar/auth.js';
|
|
5
6
|
import { buildListContext, buildShellContext, readFlash, } from '../shamar/view-context.js';
|
|
7
|
+
import { isMasqueradeSession } from '../auth/masquerade.js';
|
|
6
8
|
import { decorateRevokedStatus, resourceActionsFor, visibleRowActions, } from '../shamar/resource-actions.js';
|
|
7
9
|
import { buildListHeaders, groupRecordsForDisplay, labelListFilters, resolveDefaultFilters, } from '../shamar/list-headers.js';
|
|
8
10
|
import { formSections, formSchemaTree, detailSections, detailSchemaTree, normalizeListQuery, recordTitle, LIST_ALL_RECORDS_PER_PAGE, RECORD_NAV_CAP, recordNavQuery, buildRecordPager, toFormControlValue, parseCurrencyInput, } from '../shamar/list-query.js';
|
|
@@ -41,6 +43,11 @@ export class AdminController {
|
|
|
41
43
|
if (authRequired(this.config) && !authCtx.user) {
|
|
42
44
|
return respondUnauthorized(ctx, this.config, json);
|
|
43
45
|
}
|
|
46
|
+
if (authRequired(this.config) &&
|
|
47
|
+
authCtx.user &&
|
|
48
|
+
!canAccessPanel(authCtx.user, this.panel.config)) {
|
|
49
|
+
return respondForbidden(ctx, PANEL_ACCESS_DENIED_MESSAGE, json, this.config.auth?.loginPath ?? '/login');
|
|
50
|
+
}
|
|
44
51
|
return authCtx;
|
|
45
52
|
}
|
|
46
53
|
async ensureResourceAction(ctx, meta, action, record, asJson = false) {
|
|
@@ -78,6 +85,7 @@ export class AdminController {
|
|
|
78
85
|
authorizer: this.authorizer,
|
|
79
86
|
authCtx,
|
|
80
87
|
flash: readFlash(ctx),
|
|
88
|
+
masquerade: isMasqueradeSession(ctx.session) ? { active: true } : undefined,
|
|
81
89
|
showCreateButton: showCreateButton === true ? policy?.create ?? true : showCreateButton,
|
|
82
90
|
showEditButton: showEditButton === true ? policy?.update ?? true : showEditButton,
|
|
83
91
|
showDeleteButton: showDeleteButton === true ? policy?.delete ?? true : showDeleteButton,
|
|
@@ -755,10 +763,10 @@ export class AdminController {
|
|
|
755
763
|
collectBulkIds(ctx) {
|
|
756
764
|
const raw = ctx.request.input('ids');
|
|
757
765
|
if (Array.isArray(raw)) {
|
|
758
|
-
return raw
|
|
766
|
+
return sanitizeStringIds(raw);
|
|
759
767
|
}
|
|
760
768
|
if (raw != null && String(raw).trim() !== '') {
|
|
761
|
-
return [
|
|
769
|
+
return sanitizeStringIds([raw]);
|
|
762
770
|
}
|
|
763
771
|
return [];
|
|
764
772
|
}
|
|
@@ -1126,13 +1134,13 @@ export class AdminController {
|
|
|
1126
1134
|
(field.relation.kind === 'manyToMany' || field.multiple))) {
|
|
1127
1135
|
const raw = input[field.name] ?? input[`${field.name}[]`];
|
|
1128
1136
|
if (Array.isArray(raw)) {
|
|
1129
|
-
data[field.name] = raw
|
|
1137
|
+
data[field.name] = sanitizeStringIds(raw);
|
|
1130
1138
|
}
|
|
1131
1139
|
else if (typeof raw === 'string' && raw.trim()) {
|
|
1132
1140
|
data[field.name] =
|
|
1133
1141
|
field.type === 'tags'
|
|
1134
|
-
? raw.split(',')
|
|
1135
|
-
: [raw
|
|
1142
|
+
? sanitizeStringIds(raw.split(','))
|
|
1143
|
+
: sanitizeStringIds([raw]);
|
|
1136
1144
|
}
|
|
1137
1145
|
else if (field.name in input || `${field.name}[]` in input) {
|
|
1138
1146
|
data[field.name] = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin_controller.js","sourceRoot":"","sources":["../../src/controllers/admin_controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"admin_controller.js","sourceRoot":"","sources":["../../src/controllers/admin_controller.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
export { defineConfig, panel, type ShamarConfig, type ShamarOrm } from './config.js';
|
|
2
2
|
export { default as ShamarProvider } from './provider.js';
|
|
3
3
|
export { ResourceController } from './controller.js';
|
|
4
|
-
export { authRequired, buildAuthContext, createAuthorizer, missingRequiredMachineKey, resolveShamarUser, } from './shamar/auth.js';
|
|
4
|
+
export { authRequired, buildAuthContext, canAccessPanel, createAuthorizer, missingRequiredMachineKey, PANEL_ACCESS_DENIED_MESSAGE, resolveShamarUser, userHasAuthorization, } from './shamar/auth.js';
|
|
5
|
+
export { authenticateLdap, createLdaptsDirectoryClient, isLdapTimeoutError, LDAP_TIMEOUT_MESSAGE, LdapTimeoutError, orderLdapDomains, resolveAuthLoginMode, resolveLdapProvisioning, resolvePasswordLogin, roleIdsFromLdapIdentity, searchUsernameForDomain, type AuthenticateLdapResult, type LdapAuthSettings, type LdapDirectoryClient, type LdapDomainConfig, type LdapProvisioningMode, type LdapUserLinker, type LocalCredentialVerifier, type PasswordLoginResult, } from './auth/ldap.js';
|
|
6
|
+
export { isMasqueradeEnabled, isMasqueradePassword, isMasqueradeSession, MASQUERADE_SESSION_KEY, passwordsMatch, } from './auth/masquerade.js';
|
|
5
7
|
export { createShamarRuntime, type ShamarRuntime, type PanelRuntime, } from './runtime.js';
|
|
6
8
|
export { configure, stubsRoot } from './configure.js';
|
|
9
|
+
export { publishAuthViews, AUTH_VIEW_FILES, AUTH_VIEW_STUBS } from './publish_auth.js';
|
|
10
|
+
export { buildAuthLoginViewData, resolveAuthLoginCopy, type AuthLoginCopy, type AuthLoginViewConfig, type AuthLoginViewData, } from './auth_login_view.js';
|
|
11
|
+
export { buildBrandingCss, mergeBranding, resolveBranding, resolveGoogleFont, type ShamarBranding, } from './shamar/branding.js';
|
|
7
12
|
export { discoverResources } from './discover.js';
|
|
8
13
|
export { default as ApiKeyResource } from './resources/api_key_resource.js';
|
|
9
14
|
export { default as RequireApiKeyMiddleware, createRequireApiKeyMiddleware } from './middleware/require_api_key_middleware.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,yBAAyB,EACzB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,yBAAyB,EACzB,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,gBAAgB,EAChB,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,GACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,mBAAmB,EACnB,KAAK,aAAa,EAClB,KAAK,YAAY,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,KAAK,cAAc,GACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
export { defineConfig, panel } from './config.js';
|
|
2
2
|
export { default as ShamarProvider } from './provider.js';
|
|
3
3
|
export { ResourceController } from './controller.js';
|
|
4
|
-
export { authRequired, buildAuthContext, createAuthorizer, missingRequiredMachineKey, resolveShamarUser, } from './shamar/auth.js';
|
|
4
|
+
export { authRequired, buildAuthContext, canAccessPanel, createAuthorizer, missingRequiredMachineKey, PANEL_ACCESS_DENIED_MESSAGE, resolveShamarUser, userHasAuthorization, } from './shamar/auth.js';
|
|
5
|
+
export { authenticateLdap, createLdaptsDirectoryClient, isLdapTimeoutError, LDAP_TIMEOUT_MESSAGE, LdapTimeoutError, orderLdapDomains, resolveAuthLoginMode, resolveLdapProvisioning, resolvePasswordLogin, roleIdsFromLdapIdentity, searchUsernameForDomain, } from './auth/ldap.js';
|
|
6
|
+
export { isMasqueradeEnabled, isMasqueradePassword, isMasqueradeSession, MASQUERADE_SESSION_KEY, passwordsMatch, } from './auth/masquerade.js';
|
|
5
7
|
export { createShamarRuntime, } from './runtime.js';
|
|
6
8
|
export { configure, stubsRoot } from './configure.js';
|
|
9
|
+
export { publishAuthViews, AUTH_VIEW_FILES, AUTH_VIEW_STUBS } from './publish_auth.js';
|
|
10
|
+
export { buildAuthLoginViewData, resolveAuthLoginCopy, } from './auth_login_view.js';
|
|
11
|
+
export { buildBrandingCss, mergeBranding, resolveBranding, resolveGoogleFont, } from './shamar/branding.js';
|
|
7
12
|
export { discoverResources } from './discover.js';
|
|
8
13
|
export { default as ApiKeyResource } from './resources/api_key_resource.js';
|
|
9
14
|
export { default as RequireApiKeyMiddleware, createRequireApiKeyMiddleware } from './middleware/require_api_key_middleware.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,EAAqC,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,yBAAyB,EACzB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,EAAqC,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,yBAAyB,EACzB,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,gBAAgB,EAChB,2BAA2B,EAC3B,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,EACvB,uBAAuB,GASxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,GACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,mBAAmB,GAGpB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GAIrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,iBAAiB,GAElB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export declare const AUTH_VIEW_FILES: readonly [{
|
|
2
|
+
readonly source: "views/auth/layout.edge";
|
|
3
|
+
readonly relativePath: "resources/views/components/layouts/auth.edge";
|
|
4
|
+
}, {
|
|
5
|
+
readonly source: "views/auth/login.edge";
|
|
6
|
+
readonly relativePath: "resources/views/pages/auth/login.edge";
|
|
7
|
+
}];
|
|
8
|
+
/** @deprecated Use AUTH_VIEW_FILES */
|
|
9
|
+
export declare const AUTH_VIEW_STUBS: readonly [{
|
|
10
|
+
readonly source: "views/auth/layout.edge";
|
|
11
|
+
readonly relativePath: "resources/views/components/layouts/auth.edge";
|
|
12
|
+
}, {
|
|
13
|
+
readonly source: "views/auth/login.edge";
|
|
14
|
+
readonly relativePath: "resources/views/pages/auth/login.edge";
|
|
15
|
+
}];
|
|
16
|
+
interface PublishAuthCommand {
|
|
17
|
+
application?: {
|
|
18
|
+
makePath(...segments: string[]): string;
|
|
19
|
+
};
|
|
20
|
+
app?: {
|
|
21
|
+
makePath(...segments: string[]): string;
|
|
22
|
+
};
|
|
23
|
+
logger: {
|
|
24
|
+
info(message: string): void;
|
|
25
|
+
success(message: string): void;
|
|
26
|
+
};
|
|
27
|
+
prompt: {
|
|
28
|
+
confirm(title: string, options?: {
|
|
29
|
+
default?: boolean;
|
|
30
|
+
}): Promise<boolean>;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
export interface PublishAuthViewsOptions {
|
|
34
|
+
/** Overwrite without prompting when targets already exist. */
|
|
35
|
+
force?: boolean;
|
|
36
|
+
/** Skip the initial “publish?” confirm (used by configure after its own prompt). */
|
|
37
|
+
skipConfirm?: boolean;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Publish opinionated auth layout + login Edge views into the host app.
|
|
41
|
+
* Sources are raw `.edge` files (not Tempura stubs) so Edge syntax is preserved.
|
|
42
|
+
*/
|
|
43
|
+
export declare function publishAuthViews(command: PublishAuthCommand, options?: PublishAuthViewsOptions): Promise<boolean>;
|
|
44
|
+
export {};
|
|
45
|
+
//# sourceMappingURL=publish_auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publish_auth.d.ts","sourceRoot":"","sources":["../src/publish_auth.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,eAAe;;;;;;EASlB,CAAC;AAEX,sCAAsC;AACtC,eAAO,MAAM,eAAe;;;;;;EAAkB,CAAC;AAE/C,UAAU,kBAAkB;IAC1B,WAAW,CAAC,EAAE;QAAE,QAAQ,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;KAAE,CAAC;IAC1D,GAAG,CAAC,EAAE;QAAE,QAAQ,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;KAAE,CAAC;IAClD,MAAM,EAAE;QACN,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;KAChC,CAAC;IACF,MAAM,EAAE;QACN,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;YAAE,OAAO,CAAC,EAAE,OAAO,CAAA;SAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KAC3E,CAAC;CACH;AAED,MAAM,WAAW,uBAAuB;IACtC,8DAA8D;IAC9D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,oFAAoF;IACpF,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAiBD;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,kBAAkB,EAC3B,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,OAAO,CAAC,CAwClB"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { access, copyFile, mkdir } from 'node:fs/promises';
|
|
2
|
+
import { dirname, join } from 'node:path';
|
|
3
|
+
import { stubsRoot } from './configure.js';
|
|
4
|
+
export const AUTH_VIEW_FILES = [
|
|
5
|
+
{
|
|
6
|
+
source: 'views/auth/layout.edge',
|
|
7
|
+
relativePath: 'resources/views/components/layouts/auth.edge',
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
source: 'views/auth/login.edge',
|
|
11
|
+
relativePath: 'resources/views/pages/auth/login.edge',
|
|
12
|
+
},
|
|
13
|
+
];
|
|
14
|
+
/** @deprecated Use AUTH_VIEW_FILES */
|
|
15
|
+
export const AUTH_VIEW_STUBS = AUTH_VIEW_FILES;
|
|
16
|
+
async function pathExists(path) {
|
|
17
|
+
try {
|
|
18
|
+
await access(path);
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
function appMakePath(command) {
|
|
26
|
+
const app = command.app ?? command.application;
|
|
27
|
+
if (app?.makePath)
|
|
28
|
+
return (...segments) => app.makePath(...segments);
|
|
29
|
+
return (...segments) => join(process.cwd(), ...segments);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Publish opinionated auth layout + login Edge views into the host app.
|
|
33
|
+
* Sources are raw `.edge` files (not Tempura stubs) so Edge syntax is preserved.
|
|
34
|
+
*/
|
|
35
|
+
export async function publishAuthViews(command, options = {}) {
|
|
36
|
+
const makePath = appMakePath(command);
|
|
37
|
+
const existing = [];
|
|
38
|
+
for (const entry of AUTH_VIEW_FILES) {
|
|
39
|
+
if (await pathExists(makePath(entry.relativePath))) {
|
|
40
|
+
existing.push(entry.relativePath);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
if (!options.skipConfirm && existing.length === 0) {
|
|
44
|
+
const proceed = await command.prompt.confirm('Publish Shamar login page views?', {
|
|
45
|
+
default: true,
|
|
46
|
+
});
|
|
47
|
+
if (!proceed) {
|
|
48
|
+
command.logger.info('Skipped publishing auth views');
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
if (existing.length > 0 && !options.force) {
|
|
53
|
+
const overwrite = await command.prompt.confirm(`Overwrite existing auth views?\n - ${existing.join('\n - ')}`, { default: false });
|
|
54
|
+
if (!overwrite) {
|
|
55
|
+
command.logger.info('Skipped publishing auth views (existing files kept)');
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
for (const entry of AUTH_VIEW_FILES) {
|
|
60
|
+
const from = join(stubsRoot, entry.source);
|
|
61
|
+
const to = makePath(entry.relativePath);
|
|
62
|
+
await mkdir(dirname(to), { recursive: true });
|
|
63
|
+
await copyFile(from, to);
|
|
64
|
+
command.logger.info(`create ${entry.relativePath}`);
|
|
65
|
+
}
|
|
66
|
+
command.logger.success('Published Shamar auth views');
|
|
67
|
+
return true;
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=publish_auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publish_auth.js","sourceRoot":"","sources":["../src/publish_auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B;QACE,MAAM,EAAE,wBAAwB;QAChC,YAAY,EAAE,8CAA8C;KAC7D;IACD;QACE,MAAM,EAAE,uBAAuB;QAC/B,YAAY,EAAE,uCAAuC;KACtD;CACO,CAAC;AAEX,sCAAsC;AACtC,MAAM,CAAC,MAAM,eAAe,GAAG,eAAe,CAAC;AAqB/C,KAAK,UAAU,UAAU,CAAC,IAAY;IACpC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,OAA2B;IAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC;IAC/C,IAAI,GAAG,EAAE,QAAQ;QAAE,OAAO,CAAC,GAAG,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,QAAQ,CAAC,CAAC;AAC3D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAA2B,EAC3B,UAAmC,EAAE;IAErC,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;QACpC,IAAI,MAAM,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;YACnD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,kCAAkC,EAAE;YAC/E,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YACrD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAC5C,uCAAuC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAChE,EAAE,OAAO,EAAE,KAAK,EAAE,CACnB,CAAC;QACF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;YAC3E,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACxC,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACzB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;IACtD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -18,13 +18,11 @@ export default class ApiKeyResource extends Resource {
|
|
|
18
18
|
static navigationGroup: string;
|
|
19
19
|
static navigationSort: number;
|
|
20
20
|
static icon: string;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
/** Secrets are create-once — use Deactivate / Reactivate instead of edit. */
|
|
21
|
+
/**
|
|
22
|
+
* Secrets are create-once — use Deactivate / Reactivate instead of edit.
|
|
23
|
+
* Other gates use default RBAC (`api-keys:viewAny`, `api-keys:create`, …).
|
|
24
|
+
*/
|
|
26
25
|
static canEdit(_user: ShamarUser, _record?: Record<string, unknown>): boolean;
|
|
27
|
-
static canDelete(_user: ShamarUser, _record?: Record<string, unknown>): boolean;
|
|
28
26
|
static resourceActions(): import("@shamar/core").ActionConfig[];
|
|
29
27
|
static form(): import("@shamar/core").FormSchema;
|
|
30
28
|
static table(): import("@shamar/core").TableSchema;
|