@kernhq/module-quire 0.11.1 → 0.12.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/contract/models.d.ts +46 -0
- package/dist/contract/models.d.ts.map +1 -1
- package/dist/contract/models.js +73 -0
- package/dist/contract/models.js.map +1 -1
- package/dist/contract/permissions.d.ts +17 -1
- package/dist/contract/permissions.d.ts.map +1 -1
- package/dist/contract/permissions.js +34 -0
- package/dist/contract/permissions.js.map +1 -1
- package/dist/contract/router.d.ts +670 -0
- package/dist/contract/router.d.ts.map +1 -1
- package/dist/contract/router.js +273 -2
- package/dist/contract/router.js.map +1 -1
- package/dist/server/_impl.d.ts +770 -0
- package/dist/server/_impl.d.ts.map +1 -1
- package/dist/server/_impl.js +264 -2
- package/dist/server/_impl.js.map +1 -1
- package/dist/server/schema.d.ts +318 -1
- package/dist/server/schema.d.ts.map +1 -1
- package/dist/server/schema.js +86 -0
- package/dist/server/schema.js.map +1 -1
- package/dist/server/services/access.d.ts +1 -0
- package/dist/server/services/access.d.ts.map +1 -1
- package/dist/server/services/index.d.ts +3 -0
- package/dist/server/services/index.d.ts.map +1 -1
- package/dist/server/services/index.js +5 -1
- package/dist/server/services/index.js.map +1 -1
- package/dist/server/services/pages.d.ts.map +1 -1
- package/dist/server/services/pages.js +6 -0
- package/dist/server/services/pages.js.map +1 -1
- package/dist/server/services/publications.d.ts +177 -0
- package/dist/server/services/publications.d.ts.map +1 -0
- package/dist/server/services/publications.js +553 -0
- package/dist/server/services/publications.js.map +1 -0
- package/dist/server/services/versions.d.ts +4 -0
- package/dist/server/services/versions.d.ts.map +1 -1
- package/migrations/0008_publications.sql +140 -0
- package/migrations/meta/_journal.json +7 -0
- package/package.json +1 -1
- package/src/client/components/PublishDialog.svelte +857 -0
- package/src/client/i18n.ts +434 -0
- package/src/client/index.ts +21 -0
- package/src/client/mock.ts +426 -2
- package/src/client/pages/PageView.svelte +139 -0
- package/src/client/public-url.ts +64 -0
- package/src/client/query.ts +16 -0
- package/src/contract/models.ts +77 -0
- package/src/contract/permissions.ts +53 -1
- package/src/contract/router.ts +302 -1
|
@@ -87,6 +87,8 @@ export declare const PageNode: z.ZodObject<{
|
|
|
87
87
|
icon: z.ZodNullable<z.ZodString>;
|
|
88
88
|
hasChildren: z.ZodBoolean;
|
|
89
89
|
archivedAt: z.ZodNullable<z.ZodISODateTime>;
|
|
90
|
+
excludedFromPublic: z.ZodDefault<z.ZodBoolean>;
|
|
91
|
+
hasPublishedVersion: z.ZodDefault<z.ZodBoolean>;
|
|
90
92
|
}, z.core.$strip>;
|
|
91
93
|
export type PageNode = z.infer<typeof PageNode>;
|
|
92
94
|
/**
|
|
@@ -287,6 +289,50 @@ export declare const Watcher: z.ZodObject<{
|
|
|
287
289
|
createdAt: z.ZodISODateTime;
|
|
288
290
|
}, z.core.$strip>;
|
|
289
291
|
export type Watcher = z.infer<typeof Watcher>;
|
|
292
|
+
/**
|
|
293
|
+
* How a published site is coloured. `auto` follows the reader's own setting rather than the
|
|
294
|
+
* author's, which is the only one of the three that is a preference and not an instruction.
|
|
295
|
+
*/
|
|
296
|
+
export declare const PublicationTheme: z.ZodEnum<{
|
|
297
|
+
auto: "auto";
|
|
298
|
+
light: "light";
|
|
299
|
+
dark: "dark";
|
|
300
|
+
}>;
|
|
301
|
+
export type PublicationTheme = z.infer<typeof PublicationTheme>;
|
|
302
|
+
/**
|
|
303
|
+
* A page, and everything under it, at a URL a signed-out stranger can open.
|
|
304
|
+
*
|
|
305
|
+
* The row *is* the grant: no publication, no public page, and deleting it takes the site down. What
|
|
306
|
+
* a reader is served is the **pinned published version** of each page — `Page.publishedVersionId`
|
|
307
|
+
* and the HTML rendered onto it — never the live document and never the draft. A page with no
|
|
308
|
+
* published version is not public, whatever the tree says.
|
|
309
|
+
*
|
|
310
|
+
* There is no `passwordHash` here and there never should be. `hasPassword` is the whole of what a
|
|
311
|
+
* client needs: whether to ask. A hash is a hash, a salt and a cost, and shipping it to a browser
|
|
312
|
+
* turns an online guess into an offline one.
|
|
313
|
+
*/
|
|
314
|
+
export declare const Publication: z.ZodObject<{
|
|
315
|
+
id: z.ZodUUID;
|
|
316
|
+
workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
|
|
317
|
+
rootPageId: z.ZodUUID;
|
|
318
|
+
includeDescendants: z.ZodBoolean;
|
|
319
|
+
slug: z.ZodString;
|
|
320
|
+
hasPassword: z.ZodBoolean;
|
|
321
|
+
expiresAt: z.ZodNullable<z.ZodISODateTime>;
|
|
322
|
+
seoTitle: z.ZodString;
|
|
323
|
+
seoDescription: z.ZodString;
|
|
324
|
+
ogImageUrl: z.ZodNullable<z.ZodString>;
|
|
325
|
+
indexable: z.ZodBoolean;
|
|
326
|
+
theme: z.ZodEnum<{
|
|
327
|
+
auto: "auto";
|
|
328
|
+
light: "light";
|
|
329
|
+
dark: "dark";
|
|
330
|
+
}>;
|
|
331
|
+
createdBy: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "UserId", "out">>;
|
|
332
|
+
createdAt: z.ZodISODateTime;
|
|
333
|
+
updatedAt: z.ZodISODateTime;
|
|
334
|
+
}, z.core.$strip>;
|
|
335
|
+
export type Publication = z.infer<typeof Publication>;
|
|
290
336
|
export declare const Ok: z.ZodObject<{
|
|
291
337
|
ok: z.ZodLiteral<true>;
|
|
292
338
|
}, z.core.$strip>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/contract/models.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,yGAAyG;AACzG,eAAO,MAAM,SAAS,UAAU,CAAA;AAEhC;;;;;;GAMG;AACH,eAAO,MAAM,eAAe;;;;EAA4C,CAAA;AACxE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAE7D,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;iBAoBhB,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAA;AAEzC;;;;;;;;;GASG;AACH,eAAO,MAAM,QAAQ;;;;EAAuC,CAAA;AAC5D,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAA;AAE/C,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;iBAwBf,CAAA;AACF,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAA;AAEvC,uFAAuF;AACvF,eAAO,MAAM,QAAQ
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/contract/models.ts"],"names":[],"mappings":"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"}
|
package/dist/contract/models.js
CHANGED
|
@@ -77,6 +77,30 @@ export const PageNode = z.object({
|
|
|
77
77
|
icon: z.string().nullable(),
|
|
78
78
|
hasChildren: z.boolean(),
|
|
79
79
|
archivedAt: Timestamp.nullable(),
|
|
80
|
+
/**
|
|
81
|
+
* Kept out of every publication, present and future — `publications.optOut` sets it.
|
|
82
|
+
*
|
|
83
|
+
* On the node rather than on `Page` because the only screen that reads it is a *list*: the share
|
|
84
|
+
* dialog draws one row per descendant with a switch on it, and a switch whose state has to be
|
|
85
|
+
* fetched page by page is a screen that opens with everything wrong and corrects itself. Two more
|
|
86
|
+
* booleans on a row the sidebar already loads for the whole space is the cheap end of that trade.
|
|
87
|
+
*
|
|
88
|
+
* `.default(false)` so a tree drawn by a client newer than its server still parses; the inferred
|
|
89
|
+
* output type is required either way, which is what makes both constructors supply it.
|
|
90
|
+
*/
|
|
91
|
+
excludedFromPublic: z.boolean().default(false),
|
|
92
|
+
/**
|
|
93
|
+
* Whether a reader without edit rights has anything to be served — `publishedVersionId != null`,
|
|
94
|
+
* as a boolean, because the id itself addresses `versions.get` and a tree row has no business
|
|
95
|
+
* carrying it.
|
|
96
|
+
*
|
|
97
|
+
* Here for the same list as the flag above, and it is the half that stops that list lying. An
|
|
98
|
+
* opt-out switch on its own says "this page is public" about a page nobody has ever published,
|
|
99
|
+
* which is the wrong answer in the safe direction — and a screen that is wrong in the safe
|
|
100
|
+
* direction today is one nobody checks tomorrow. Always false for a `live` doc and a `database`:
|
|
101
|
+
* neither has a published version, because `publishing.publish` refuses anything but a `page`.
|
|
102
|
+
*/
|
|
103
|
+
hasPublishedVersion: z.boolean().default(false),
|
|
80
104
|
});
|
|
81
105
|
/**
|
|
82
106
|
* How a version came to exist. `restore` matters: putting an older version back writes a new
|
|
@@ -211,5 +235,54 @@ export const Watcher = z.object({
|
|
|
211
235
|
pageId: Id,
|
|
212
236
|
createdAt: Timestamp,
|
|
213
237
|
});
|
|
238
|
+
/**
|
|
239
|
+
* How a published site is coloured. `auto` follows the reader's own setting rather than the
|
|
240
|
+
* author's, which is the only one of the three that is a preference and not an instruction.
|
|
241
|
+
*/
|
|
242
|
+
export const PublicationTheme = z.enum(['auto', 'light', 'dark']);
|
|
243
|
+
/**
|
|
244
|
+
* A page, and everything under it, at a URL a signed-out stranger can open.
|
|
245
|
+
*
|
|
246
|
+
* The row *is* the grant: no publication, no public page, and deleting it takes the site down. What
|
|
247
|
+
* a reader is served is the **pinned published version** of each page — `Page.publishedVersionId`
|
|
248
|
+
* and the HTML rendered onto it — never the live document and never the draft. A page with no
|
|
249
|
+
* published version is not public, whatever the tree says.
|
|
250
|
+
*
|
|
251
|
+
* There is no `passwordHash` here and there never should be. `hasPassword` is the whole of what a
|
|
252
|
+
* client needs: whether to ask. A hash is a hash, a salt and a cost, and shipping it to a browser
|
|
253
|
+
* turns an online guess into an offline one.
|
|
254
|
+
*/
|
|
255
|
+
export const Publication = z.object({
|
|
256
|
+
id: Id,
|
|
257
|
+
workspaceId: WorkspaceId,
|
|
258
|
+
/** the page the site is rooted at; its own published version is the front page */
|
|
259
|
+
rootPageId: Id,
|
|
260
|
+
/** false publishes exactly one page, which is what a single shared document wants */
|
|
261
|
+
includeDescendants: z.boolean(),
|
|
262
|
+
/**
|
|
263
|
+
* The URL segment. Unique per workspace and not beyond it — the public URL carries the workspace,
|
|
264
|
+
* so two customers both wanting `handbook` is not a collision. Lowercase by the same rule as
|
|
265
|
+
* `Space.key`: a URL that differs only in case is one URL to a person and two rows to Postgres.
|
|
266
|
+
*/
|
|
267
|
+
slug: z
|
|
268
|
+
.string()
|
|
269
|
+
.min(2)
|
|
270
|
+
.max(64)
|
|
271
|
+
.regex(/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/, 'lowercase letters, digits and dashes'),
|
|
272
|
+
/** whether a password is set — never the hash, and never the password */
|
|
273
|
+
hasPassword: z.boolean(),
|
|
274
|
+
/** null never expires; past means the URL is gone */
|
|
275
|
+
expiresAt: Timestamp.nullable(),
|
|
276
|
+
/** what a search result and a link preview say; empty falls back to the root page's own title */
|
|
277
|
+
seoTitle: z.string().max(200),
|
|
278
|
+
seoDescription: z.string().max(500),
|
|
279
|
+
ogImageUrl: z.string().max(2048).nullable(),
|
|
280
|
+
/** false sends `noindex`. Public and findable are different requests, and people mean both. */
|
|
281
|
+
indexable: z.boolean(),
|
|
282
|
+
theme: PublicationTheme,
|
|
283
|
+
createdBy: UserId.nullable(),
|
|
284
|
+
createdAt: Timestamp,
|
|
285
|
+
updatedAt: Timestamp,
|
|
286
|
+
});
|
|
214
287
|
export const Ok = z.object({ ok: z.literal(true) });
|
|
215
288
|
//# sourceMappingURL=models.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/contract/models.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/contract/models.ts"],"names":[],"mappings":"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"}
|
|
@@ -89,9 +89,25 @@ export declare const quirePermissions: readonly [{
|
|
|
89
89
|
* scope yet: `spaces.create` has no space to be scoped to.
|
|
90
90
|
* - `filter` — a list that omits what you may not see rather than refusing. "You may not open it"
|
|
91
91
|
* is a worse answer than not showing it, and `spaces.list` is deliberately the second.
|
|
92
|
+
* - `public` — there is no principal to ask about. See below.
|
|
93
|
+
*
|
|
94
|
+
* **`public` is the one that needs saying out loud.** Every other value here answers "which scope is
|
|
95
|
+
* this permission resolved at"; `public` answers "this procedure asks nobody anything", which is a
|
|
96
|
+
* different kind of statement and the only one in this module that can leak a customer's private
|
|
97
|
+
* pages to the internet. It is spelled as a value rather than an omission so that adding one is a
|
|
98
|
+
* line in a review instead of a missing entry nobody sees, and `authz.int.test.ts` treats it as its
|
|
99
|
+
* own case: it calls the procedure once as a principal denied everything and once as a genuine
|
|
100
|
+
* anonymous stranger, and fails unless the two answers are byte-for-byte identical. That is the
|
|
101
|
+
* property that matters — a public surface that quietly shows an author more than it shows a
|
|
102
|
+
* stranger is one whose author tests it and never sees what the world sees.
|
|
103
|
+
*
|
|
104
|
+
* `permission` is still required for a `public` entry, and it names the permission that had to be
|
|
105
|
+
* held to *create the grant* — `quire.page.publish`, the one somebody used to make the publication.
|
|
106
|
+
* It is not a check this procedure performs. `module.test.ts` holds every entry to a permission the
|
|
107
|
+
* module declares, and there is no honest way to write "none" that keeps the rest of that check.
|
|
92
108
|
*/
|
|
93
109
|
export interface ProcedureAuthz {
|
|
94
|
-
check: 'page' | 'space' | 'workspace' | 'filter';
|
|
110
|
+
check: 'page' | 'space' | 'workspace' | 'filter' | 'public';
|
|
95
111
|
permission: string;
|
|
96
112
|
}
|
|
97
113
|
export declare const quireProcedureAuthz: Record<string, ProcedureAuthz>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/contract/permissions.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+D3B,CAAA;AAEF
|
|
1
|
+
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/contract/permissions.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+D3B,CAAA;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAA;IAC3D,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAwH9D,CAAA"}
|
|
@@ -147,5 +147,39 @@ export const quireProcedureAuthz = {
|
|
|
147
147
|
'databases.setRelation': { check: 'page', permission: 'quire.page.edit' },
|
|
148
148
|
'publishing.publish': { check: 'page', permission: 'quire.page.publish' },
|
|
149
149
|
'publishing.revert': { check: 'page', permission: 'quire.page.edit' },
|
|
150
|
+
/*
|
|
151
|
+
* A publication hands a page's whole subtree to the internet, so the question every one of these
|
|
152
|
+
* asks is about the **root page** — not the space, and not the workspace. `quire.page.publish` is
|
|
153
|
+
* already the permission that decides which version readers are served; deciding that the readers
|
|
154
|
+
* include everybody is the same decision one step further.
|
|
155
|
+
*
|
|
156
|
+
* `list` is the exception and is space-scoped, because "what has this space published" has no one
|
|
157
|
+
* page to resolve against. It filters as well: a publication whose root page the caller may not
|
|
158
|
+
* read is not named in the answer, for the same reason `pages.trash` does not name a title.
|
|
159
|
+
*
|
|
160
|
+
* `optOut` is `quire.page.publish` rather than `quire.page.edit` on purpose. Marking a page
|
|
161
|
+
* "never public" is a publishing decision about who may read it, not a change to what it says —
|
|
162
|
+
* and the two permissions are held by different people in a space where writing is open and
|
|
163
|
+
* publishing is not.
|
|
164
|
+
*/
|
|
165
|
+
'publications.list': { check: 'space', permission: 'quire.page.publish' },
|
|
166
|
+
'publications.get': { check: 'page', permission: 'quire.page.publish' },
|
|
167
|
+
'publications.create': { check: 'page', permission: 'quire.page.publish' },
|
|
168
|
+
'publications.update': { check: 'page', permission: 'quire.page.publish' },
|
|
169
|
+
'publications.remove': { check: 'page', permission: 'quire.page.publish' },
|
|
170
|
+
'publications.optOut': { check: 'page', permission: 'quire.page.publish' },
|
|
171
|
+
/*
|
|
172
|
+
* The signed-out surface. Nothing here asks a permission, because there is nobody to ask about —
|
|
173
|
+
* see the note on `check: 'public'` above. What stands in for the permission check is that every
|
|
174
|
+
* query is scoped by the **publication**: its root page, the descendants that survive the prune,
|
|
175
|
+
* `excluded_from_public` false and a rendered published version. Workspace scope is what
|
|
176
|
+
* row-level security gives, and workspace scope is not publication scope.
|
|
177
|
+
*/
|
|
178
|
+
'public.site': { check: 'public', permission: 'quire.page.publish' },
|
|
179
|
+
'public.page': { check: 'public', permission: 'quire.page.publish' },
|
|
180
|
+
'public.search': { check: 'public', permission: 'quire.page.publish' },
|
|
181
|
+
'public.sitemap': { check: 'public', permission: 'quire.page.publish' },
|
|
182
|
+
'public.robots': { check: 'public', permission: 'quire.page.publish' },
|
|
183
|
+
'public.unlock': { check: 'public', permission: 'quire.page.publish' },
|
|
150
184
|
};
|
|
151
185
|
//# sourceMappingURL=permissions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/contract/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;IAChD;QACE,GAAG,EAAE,kBAAkB;QACvB,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,4DAA4D;QACzE,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC;QACnD,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,oBAAoB;QACzB,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,+DAA+D;QAC5E,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAChC,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,iBAAiB;QACtB,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC;QACnD,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,mBAAmB;QACxB,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;QAC1C,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,iBAAiB;QACtB,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,qDAAqD;QAClE,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;QAC1C,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,oBAAoB;QACzB,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,oEAAoE;QACjF,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC;QACnD,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,oBAAoB;QACzB,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,6DAA6D;QAC1E,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;QAC1C,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,mBAAmB;QACxB,KAAK,EAAE,0BAA0B;QACjC,WAAW,EAAE,qEAAqE;QAClF,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAChC,SAAS,EAAE,IAAI;KAChB;CACF,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/contract/permissions.ts"],"names":[],"mappings":"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"}
|