@aglyn/plugins-outreach 1.0.0-beta.277 → 1.0.0-beta.282

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aglyn/plugins-outreach",
3
- "version": "1.0.0-beta.277",
3
+ "version": "1.0.0-beta.282",
4
4
  "license": "Apache-2.0",
5
5
  "homepage": "https://aglyn.com",
6
6
  "repository": {
@@ -25,19 +25,19 @@
25
25
  "./package.json": "./package.json"
26
26
  },
27
27
  "dependencies": {
28
- "@aglyn/aglyn": "1.0.0-beta.277",
29
- "@aglyn/shared-data-mdi": "1.0.0-beta.277",
30
- "@aglyn/shared-ui-email-campaigns": "1.0.0-beta.277",
31
- "@aglyn/shared-ui-jsx": "1.0.0-beta.277",
32
- "@aglyn/shared-ui-next": "1.0.0-beta.277",
33
- "@aglyn/shared-ui-snackstack": "1.0.0-beta.277",
34
- "@aglyn/shared-util-email": "1.0.0-beta.277",
35
- "@aglyn/shared-util-http": "1.0.0-beta.277",
36
- "@aglyn/shared-util-timestamp": "1.0.0-beta.277",
37
- "@aglyn/shared-util-tools": "1.0.0-beta.277",
38
- "@aglyn/tenant-data-admin": "1.0.0-beta.277",
39
- "@aglyn/tenant-feature-instance": "1.0.0-beta.277",
40
- "@aglyn/tenant-runtime": "1.0.0-beta.277",
28
+ "@aglyn/aglyn": "1.0.0-beta.282",
29
+ "@aglyn/shared-data-mdi": "1.0.0-beta.282",
30
+ "@aglyn/shared-ui-email-campaigns": "1.0.0-beta.282",
31
+ "@aglyn/shared-ui-jsx": "1.0.0-beta.282",
32
+ "@aglyn/shared-ui-next": "1.0.0-beta.282",
33
+ "@aglyn/shared-ui-snackstack": "1.0.0-beta.282",
34
+ "@aglyn/shared-util-email": "1.0.0-beta.282",
35
+ "@aglyn/shared-util-http": "1.0.0-beta.282",
36
+ "@aglyn/shared-util-timestamp": "1.0.0-beta.282",
37
+ "@aglyn/shared-util-tools": "1.0.0-beta.282",
38
+ "@aglyn/tenant-data-admin": "1.0.0-beta.282",
39
+ "@aglyn/tenant-feature-instance": "1.0.0-beta.282",
40
+ "@aglyn/tenant-runtime": "1.0.0-beta.282",
41
41
  "@swc/helpers": "0.5.23"
42
42
  },
43
43
  "peerDependencies": {
@@ -14,7 +14,7 @@
14
14
  * See the License for the specific language governing permissions and
15
15
  * limitations under the License.
16
16
  */
17
- import type { PluginPermission } from '@aglyn/aglyn';
17
+ import type { PluginPermission } from '@aglyn/aglyn/plugin-manager/plugin-permissions';
18
18
  /**
19
19
  * The persisted plugin id (AGL-2974): stored in `org.enabledPlugins`, named in
20
20
  * `plugins.config.json` and `FIRST_PARTY_PLUGINS`, and the owner of every
@@ -48,7 +48,8 @@
48
48
  admin: true,
49
49
  editor: false,
50
50
  viewer: false
51
- }
51
+ },
52
+ groupLabel: 'Sequences'
52
53
  }
53
54
  ];
54
55
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../libs/plugins/outreach/src/lib/constants/bundle-common.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2026 Aglyn LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { PluginPermission } from '@aglyn/aglyn'\n\n/**\n * The persisted plugin id (AGL-2974): stored in `org.enabledPlugins`, named in\n * `plugins.config.json` and `FIRST_PARTY_PLUGINS`, and the owner of every\n * `outreach/*` API route. Renaming it is a data change.\n */\nexport const OUTREACH_PLUGIN_ID = 'outreach'\n\n/**\n * The permission that opens Sequences.\n *\n * Dotted like the catalog's keys but declared by this plugin, so the console\n * answers it from the resolved permission map and a custom role or a\n * per-member override stores it by this exact string. The Firestore rules\n * read the same string off the member's stamped `resolvedPermissions`.\n */\nexport const OUTREACH_USE_PERMISSION = 'outreach.use'\n\n/**\n * This plugin's declared permissions (AGL-435 registry). Registered by both\n * halves, so the console gate and a route's resolution agree.\n *\n * Owners and admins hold it by default — `owner` resolves onto the admin\n * tier — and editors and viewers do not: a sequence sends mail as a person\n * from their own mailbox, which is a decision for the people who run the\n * workspace to hand out, one member or one custom role at a time.\n *\n * The KEY is `outreach.use` and the LABEL reads \"Use Sequences\" (AGL-3199):\n * the key is stored on custom roles and stamped on members, and the label is\n * the only half anyone reads.\n */\nexport const OUTREACH_PERMISSIONS: readonly PluginPermission[] = [\n {\n key: OUTREACH_USE_PERMISSION,\n pluginId: OUTREACH_PLUGIN_ID,\n label: 'Use Sequences',\n description:\n 'Open Sequences, and work its email sequences and connected mailboxes.',\n defaults: { admin: true, editor: false, viewer: false },\n },\n]\n"],"names":["OUTREACH_PLUGIN_ID","OUTREACH_USE_PERMISSION","OUTREACH_PERMISSIONS","key","pluginId","label","description","defaults","admin","editor","viewer"],"mappings":"AAAA;;;;;;;;;;;;;;;CAeC,GAID;;;;CAIC,GACD,OAAO,MAAMA,qBAAqB,WAAU;AAE5C;;;;;;;CAOC,GACD,OAAO,MAAMC,0BAA0B,eAAc;AAErD;;;;;;;;;;;;CAYC,GACD,OAAO,MAAMC,uBAAoD;IAC/D;QACEC,KAAKF;QACLG,UAAUJ;QACVK,OAAO;QACPC,aACE;QACFC,UAAU;YAAEC,OAAO;YAAMC,QAAQ;YAAOC,QAAQ;QAAM;IACxD;CACD,CAAA"}
1
+ {"version":3,"sources":["../../../../../../../libs/plugins/outreach/src/lib/constants/bundle-common.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2026 Aglyn LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { PluginPermission } from '@aglyn/aglyn/plugin-manager/plugin-permissions'\n\n/**\n * The persisted plugin id (AGL-2974): stored in `org.enabledPlugins`, named in\n * `plugins.config.json` and `FIRST_PARTY_PLUGINS`, and the owner of every\n * `outreach/*` API route. Renaming it is a data change.\n */\nexport const OUTREACH_PLUGIN_ID = 'outreach'\n\n/**\n * The permission that opens Sequences.\n *\n * Dotted like the catalog's keys but declared by this plugin, so the console\n * answers it from the resolved permission map and a custom role or a\n * per-member override stores it by this exact string. The Firestore rules\n * read the same string off the member's stamped `resolvedPermissions`.\n */\nexport const OUTREACH_USE_PERMISSION = 'outreach.use'\n\n/**\n * This plugin's declared permissions (AGL-435 registry). Registered by both\n * halves, so the console gate and a route's resolution agree.\n *\n * Owners and admins hold it by default — `owner` resolves onto the admin\n * tier — and editors and viewers do not: a sequence sends mail as a person\n * from their own mailbox, which is a decision for the people who run the\n * workspace to hand out, one member or one custom role at a time.\n *\n * The KEY is `outreach.use` and the LABEL reads \"Use Sequences\" (AGL-3199):\n * the key is stored on custom roles and stamped on members, and the label is\n * the only half anyone reads.\n */\nexport const OUTREACH_PERMISSIONS: readonly PluginPermission[] = [\n {\n key: OUTREACH_USE_PERMISSION,\n pluginId: OUTREACH_PLUGIN_ID,\n label: 'Use Sequences',\n description:\n 'Open Sequences, and work its email sequences and connected mailboxes.',\n defaults: { admin: true, editor: false, viewer: false },\n groupLabel: 'Sequences',\n },\n]\n"],"names":["OUTREACH_PLUGIN_ID","OUTREACH_USE_PERMISSION","OUTREACH_PERMISSIONS","key","pluginId","label","description","defaults","admin","editor","viewer","groupLabel"],"mappings":"AAAA;;;;;;;;;;;;;;;CAeC,GAID;;;;CAIC,GACD,OAAO,MAAMA,qBAAqB,WAAU;AAE5C;;;;;;;CAOC,GACD,OAAO,MAAMC,0BAA0B,eAAc;AAErD;;;;;;;;;;;;CAYC,GACD,OAAO,MAAMC,uBAAoD;IAC/D;QACEC,KAAKF;QACLG,UAAUJ;QACVK,OAAO;QACPC,aACE;QACFC,UAAU;YAAEC,OAAO;YAAMC,QAAQ;YAAOC,QAAQ;QAAM;QACtDC,YAAY;IACd;CACD,CAAA"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Aglyn LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ /**
18
+ * The plugin's DECLARATIONS (AGL-4047): its permission keys (`outreach.use`), which
19
+ * the one permission catalog lists beside the core keys. Loaded eagerly by
20
+ * the console, client and server, through the generated declarations
21
+ * manifests (the tenant runtime never loads it: the plugin is the console's
22
+ * alone), so the role editor offers the keys, a
23
+ * custom role or a per-member override keeps them, and a route resolves
24
+ * them whether or not a request has touched the plugin yet. Light by
25
+ * construction: nothing here reaches a provider, Firestore or React.
26
+ */
27
+ export declare function registerOutreachConsoleDeclarations(): void;
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Aglyn LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */ import { registerPluginPermissions } from "@aglyn/aglyn/plugin-manager/plugin-permissions";
17
+ import { OUTREACH_PERMISSIONS } from "./constants/bundle-common.js";
18
+ let declared = false;
19
+ /**
20
+ * The plugin's DECLARATIONS (AGL-4047): its permission keys (`outreach.use`), which
21
+ * the one permission catalog lists beside the core keys. Loaded eagerly by
22
+ * the console, client and server, through the generated declarations
23
+ * manifests (the tenant runtime never loads it: the plugin is the console's
24
+ * alone), so the role editor offers the keys, a
25
+ * custom role or a per-member override keeps them, and a route resolves
26
+ * them whether or not a request has touched the plugin yet. Light by
27
+ * construction: nothing here reaches a provider, Firestore or React.
28
+ */ export function registerOutreachConsoleDeclarations() {
29
+ if (declared) return;
30
+ declared = true;
31
+ registerPluginPermissions(OUTREACH_PERMISSIONS);
32
+ }
33
+ registerOutreachConsoleDeclarations();
34
+
35
+ //# sourceMappingURL=declarations.console.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../libs/plugins/outreach/src/lib/declarations.console.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2026 Aglyn LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { registerPluginPermissions } from '@aglyn/aglyn/plugin-manager/plugin-permissions'\nimport { OUTREACH_PERMISSIONS } from './constants/bundle-common'\n\nlet declared = false\n\n/**\n * The plugin's DECLARATIONS (AGL-4047): its permission keys (`outreach.use`), which\n * the one permission catalog lists beside the core keys. Loaded eagerly by\n * the console, client and server, through the generated declarations\n * manifests (the tenant runtime never loads it: the plugin is the console's\n * alone), so the role editor offers the keys, a\n * custom role or a per-member override keeps them, and a route resolves\n * them whether or not a request has touched the plugin yet. Light by\n * construction: nothing here reaches a provider, Firestore or React.\n */\nexport function registerOutreachConsoleDeclarations(): void {\n if (declared) return\n declared = true\n registerPluginPermissions(OUTREACH_PERMISSIONS)\n}\n\nregisterOutreachConsoleDeclarations()\n"],"names":["registerPluginPermissions","OUTREACH_PERMISSIONS","declared","registerOutreachConsoleDeclarations"],"mappings":"AAAA;;;;;;;;;;;;;;;CAeC,GAED,SAASA,yBAAyB,QAAQ,iDAAgD;AAC1F,SAASC,oBAAoB,QAAQ,+BAA2B;AAEhE,IAAIC,WAAW;AAEf;;;;;;;;;CASC,GACD,OAAO,SAASC;IACd,IAAID,UAAU;IACdA,WAAW;IACXF,0BAA0BC;AAC5B;AAEAE"}