@deveye/types 0.15.0 → 0.15.1

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 CHANGED
@@ -1,4 +1,4 @@
1
- # deveye-types
1
+ # @deveye/types
2
2
 
3
3
  Les contrats partagés de [DevEye](https://github.com/Gerem66/DevEye) : types
4
4
  TypeScript et schémas zod, consommés par le serveur, le client et les modules
@@ -6,14 +6,14 @@ de features.
6
6
 
7
7
  Le package sert ses sources directement (`src/*.ts`, aucun build) :
8
8
 
9
- - **`deveye-types`** — le domaine transverse (espaces, rôles, live, partage…),
9
+ - **`@deveye/types`** — le domaine transverse (espaces, rôles, live, partage…),
10
10
  les protocoles (enveloppe WS, agent), le registre d'identité des features.
11
- - **`deveye-types/sdk`** — le contrat des modules de features : `FeatureManifest`,
11
+ - **`@deveye/types/sdk`** — le contrat des modules de features : `FeatureManifest`,
12
12
  `validateManifest`, ids `x-<slug>`.
13
- - **`deveye-types/sdk/server`** — le contexte serveur d'un module (handlers,
13
+ - **`@deveye/types/sdk/server`** — le contexte serveur d'un module (handlers,
14
14
  store, façade, service).
15
- - **`deveye-types/sdk/client`** — les contrats de l'entrée client d'un module.
16
- - **`deveye-types/sdk/testing`** — le harnais de test en mémoire des handlers.
15
+ - **`@deveye/types/sdk/client`** — les contrats de l'entrée client d'un module.
16
+ - **`@deveye/types/sdk/testing`** — le harnais de test en mémoire des handlers.
17
17
 
18
18
  Le portrait typé du barrel `deveye-sdk-client` (le runtime que l'app fournit
19
19
  aux modules) est publié ici aussi (`src/sdk/client-ambient.d.ts`) ; la CI de
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deveye/types",
3
- "version": "0.15.0",
3
+ "version": "0.15.1",
4
4
  "description": "Shared contracts (types + zod schemas) for DevEye apps",
5
5
  "main": "src/index.ts",
6
6
  "types": "src/index.ts",
@@ -283,7 +283,7 @@ export const audienceOverviewSchema = z.object({
283
283
  export type AudienceOverview = z.infer<typeof audienceOverviewSchema>;
284
284
 
285
285
  export const audienceBreakdownItemSchema = z.object({
286
- /** Le libellé déchiffré. Vide quand il l'est resté (clé d'espace convertie). */
286
+ /** Le libellé déchiffré, vide si le blob est illisible. */
287
287
  label: z.string(),
288
288
  views: z.number().int().nonnegative(),
289
289
  visitors: z.number().int().nonnegative()
@@ -10,8 +10,8 @@ import { featureAccessSchema, workspaceFeatureIdSchema } from './workspaceRole';
10
10
  * Un élément partagé **ne change jamais de clé**. Il reste chiffré sous celle de
11
11
  * son espace d'origine ; servi ailleurs, il est déchiffré avec le codec ouvert
12
12
  * de cet espace-là. C'est le prolongement direct du levier L3 de
13
- * `WORKSPACES.md` « un espace résout les clés de son propriétaire » et la
14
- * raison pour laquelle ce chantier ne re-chiffre rien.
13
+ * `WORKSPACES.md`, « chaque espace a sa clé, et un blob n'en change jamais »,
14
+ * et la raison pour laquelle ce chantier ne re-chiffre rien.
15
15
  *
16
16
  * `WORKSPACES.md` §10 range **déplacer** un élément hors périmètre, précisément
17
17
  * parce que ce serait la seule opération à exiger un déchiffrement clé A puis un
@@ -89,33 +89,6 @@ export const workspaceAddMember = {
89
89
  output: z.object({ workspace: workspaceSchema })
90
90
  };
91
91
 
92
- /**
93
- * État de la clé d'espace : déjà active, applicable, et ce qui l'empêcherait.
94
- */
95
- export const workspaceSharedKeyStatus = {
96
- command: 'workspace.sharedKeyStatus' as const,
97
- input: z.object({}),
98
- output: z.object({
99
- /** L'espace utilise déjà sa propre clé. */
100
- enabled: z.boolean(),
101
- /** Faux pour un espace personnel, qui garde la clé de son propriétaire. */
102
- applicable: z.boolean(),
103
- /** Obstacles à lever avant conversion, rédigés pour l'utilisateur. */
104
- blockers: z.array(z.string())
105
- })
106
- };
107
-
108
- /**
109
- * Convertit l'espace vers sa propre clé. Exige le propriétaire, session
110
- * déverrouillée : le contenu existant doit être relu avec sa clé avant d'être
111
- * réécrit sous celle de l'espace.
112
- */
113
- export const workspaceEnableSharedKey = {
114
- command: 'workspace.enableSharedKey' as const,
115
- input: z.object({}),
116
- output: z.object({ converted: z.number().int().nonnegative() })
117
- };
118
-
119
92
  /** Le contenu modifiable d'un rôle. */
120
93
  const roleDraftSchema = z.object({
121
94
  name: z.string().min(1).max(WORKSPACE_ROLE_NAME_MAX),
@@ -187,8 +160,6 @@ export const workspaceCommands = [
187
160
  workspaceRoleDelete,
188
161
  workspaceRoleSetDefault,
189
162
  workspaceAssignRole,
190
- workspaceSharedKeyStatus,
191
- workspaceEnableSharedKey,
192
163
  workspaceRename,
193
164
  workspaceLeave,
194
165
  workspaceRemoveMember,
package/src/index.ts CHANGED
@@ -1449,7 +1449,6 @@ export {
1449
1449
  workspaceAdd,
1450
1450
  workspaceCommands,
1451
1451
  workspaceDelete,
1452
- workspaceEnableSharedKey,
1453
1452
  workspaceLeave,
1454
1453
  workspaceRemoveMember,
1455
1454
  workspaceAddMember,
@@ -1460,8 +1459,7 @@ export {
1460
1459
  workspaceRoleList,
1461
1460
  workspaceRoleSetDefault,
1462
1461
  workspaceRoleUpdate,
1463
- workspaceSetFavorite,
1464
- workspaceSharedKeyStatus
1462
+ workspaceSetFavorite
1465
1463
  } from './features/workspace';
1466
1464
  export {
1467
1465
  AVATAR_MAX_LENGTH,
@@ -25,8 +25,8 @@ declare module 'deveye-sdk-client' {
25
25
  SelectHTMLAttributes
26
26
  } from 'react';
27
27
  import type { z, ZodType } from 'zod';
28
- import type { FeatureAccess, FeatureId, WorkspaceCapability } from 'deveye-types';
29
- import type { FeatureManifest } from 'deveye-types/sdk';
28
+ import type { FeatureAccess, FeatureId, WorkspaceCapability } from '@deveye/types';
29
+ import type { FeatureManifest } from '@deveye/types/sdk';
30
30
 
31
31
  // ── UI kit ─────────────────────────────────────────────────────────────
32
32
  export const Button: ComponentType<
package/src/sdk/index.ts CHANGED
@@ -2,8 +2,8 @@
2
2
  * The DevEye feature SDK, shared surface: ids and the manifest contract.
3
3
  *
4
4
  * Side-specific surfaces live in their own entries so neither bundle drags the
5
- * other's world in: `deveye-types/sdk/server` (handlers, storage, facade),
6
- * `deveye-types/sdk/client` (component contracts), `deveye-types/sdk/testing`
5
+ * other's world in: `@deveye/types/sdk/server` (handlers, storage, facade),
6
+ * `@deveye/types/sdk/client` (component contracts), `@deveye/types/sdk/testing`
7
7
  * (handler test harness).
8
8
  */
9
9
  export * from './ids';
@@ -18,7 +18,7 @@ import {
18
18
 
19
19
  /**
20
20
  * One WebSocket command contract. Identical in shape to the descriptors native
21
- * features declare in `deveye-types/src/features/*`: the server validates the
21
+ * features declare in `@deveye/types/src/features/*`: the server validates the
22
22
  * input before your handler runs and the output after it returns, both ways,
23
23
  * so a payload that does not match a schema never crosses the wire.
24
24
  */