@aglyn/tenant-feature-instance 1.0.0-beta.270 → 1.0.0-beta.271
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 +7 -7
- package/src/lib/hooks/plan-feature-lock.d.ts +63 -0
- package/src/lib/hooks/plan-feature-lock.js +46 -0
- package/src/lib/hooks/plan-feature-lock.js.map +1 -0
- package/src/lib/hooks/use-plan-feature.d.ts +8 -0
- package/src/lib/hooks/use-plan-feature.js +35 -0
- package/src/lib/hooks/use-plan-feature.js.map +1 -0
- package/src/lib/tenant.d.ts +2 -0
- package/src/lib/tenant.js +2 -0
- package/src/lib/tenant.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aglyn/tenant-feature-instance",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.271",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"homepage": "https://aglyn.com",
|
|
6
6
|
"repository": {
|
|
@@ -25,12 +25,12 @@
|
|
|
25
25
|
"./package.json": "./package.json"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@aglyn/aglyn": "1.0.0-beta.
|
|
29
|
-
"@aglyn/shared-data-enums": "1.0.0-beta.
|
|
30
|
-
"@aglyn/shared-ui-jsx": "1.0.0-beta.
|
|
31
|
-
"@aglyn/shared-util-email": "1.0.0-beta.
|
|
32
|
-
"@aglyn/shared-util-http": "1.0.0-beta.
|
|
33
|
-
"@aglyn/shared-util-timestamp": "1.0.0-beta.
|
|
28
|
+
"@aglyn/aglyn": "1.0.0-beta.271",
|
|
29
|
+
"@aglyn/shared-data-enums": "1.0.0-beta.271",
|
|
30
|
+
"@aglyn/shared-ui-jsx": "1.0.0-beta.271",
|
|
31
|
+
"@aglyn/shared-util-email": "1.0.0-beta.271",
|
|
32
|
+
"@aglyn/shared-util-http": "1.0.0-beta.271",
|
|
33
|
+
"@aglyn/shared-util-timestamp": "1.0.0-beta.271",
|
|
34
34
|
"@swc/helpers": "0.5.23",
|
|
35
35
|
"lodash-es": "^4.18.1"
|
|
36
36
|
},
|
|
@@ -0,0 +1,63 @@
|
|
|
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
|
+
import { type OrgFeatureFlags } from '@aglyn/aglyn';
|
|
18
|
+
/**
|
|
19
|
+
* A plan-gated feature as a console surface draws it: on, locked with the
|
|
20
|
+
* plan that unlocks it, or not yet known.
|
|
21
|
+
*/
|
|
22
|
+
export interface PlanFeatureLock {
|
|
23
|
+
/** The plan doc has settled. NEVER refuse before this is true. */
|
|
24
|
+
ready: boolean;
|
|
25
|
+
/** The plan (or a purchased add-on, or an override) includes the feature. */
|
|
26
|
+
entitled: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* `ready && !entitled`: the one state in which a control is drawn disabled
|
|
29
|
+
* with an upgrade path. A pending plan draws nothing locked, because
|
|
30
|
+
* `checkEntitlement(undefined)` answers with the FREE tier and a paying
|
|
31
|
+
* workspace would see its own feature refused while its doc loads.
|
|
32
|
+
*/
|
|
33
|
+
locked: boolean;
|
|
34
|
+
/** The cheapest plan carrying the feature ("Business"), if any plan does. */
|
|
35
|
+
planLabel: string | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* The console's plan grid (`/{org}/billing#plans`), or its add-ons section
|
|
38
|
+
* for a feature no plan carries. Undefined until the org slug is known.
|
|
39
|
+
*/
|
|
40
|
+
upgradeHref: string | undefined;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* The lock state for one feature, from an org billing doc the caller already
|
|
44
|
+
* holds: the console's `useCurrentOrg()`, or a plugin's `useOrgPlan`.
|
|
45
|
+
*
|
|
46
|
+
* Free sees what the paid plans add instead of a console with pieces missing,
|
|
47
|
+
* so every surface that gates on a plan feature draws its control from this
|
|
48
|
+
* one answer: disabled, with the plan that includes it and a link to buy it.
|
|
49
|
+
*
|
|
50
|
+
* `planLabel` is derived from `PLAN_ENTITLEMENTS` on every call, so a notice
|
|
51
|
+
* can never name a tier that no longer carries the feature.
|
|
52
|
+
*/
|
|
53
|
+
export declare function resolvePlanFeatureLock(input: {
|
|
54
|
+
org: unknown;
|
|
55
|
+
ready: boolean;
|
|
56
|
+
feature: keyof OrgFeatureFlags;
|
|
57
|
+
orgSlug: string | null | undefined;
|
|
58
|
+
}): PlanFeatureLock;
|
|
59
|
+
/**
|
|
60
|
+
* The one sentence a locked control carries, on hover and for a screen
|
|
61
|
+
* reader: "Scheduled publishing is included from Business."
|
|
62
|
+
*/
|
|
63
|
+
export declare function planLockReason(subject: string, planLabel: string | undefined): string;
|
|
@@ -0,0 +1,46 @@
|
|
|
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 { checkEntitlement, planLabelGrantingFeature } from "@aglyn/aglyn";
|
|
17
|
+
/**
|
|
18
|
+
* The lock state for one feature, from an org billing doc the caller already
|
|
19
|
+
* holds: the console's `useCurrentOrg()`, or a plugin's `useOrgPlan`.
|
|
20
|
+
*
|
|
21
|
+
* Free sees what the paid plans add instead of a console with pieces missing,
|
|
22
|
+
* so every surface that gates on a plan feature draws its control from this
|
|
23
|
+
* one answer: disabled, with the plan that includes it and a link to buy it.
|
|
24
|
+
*
|
|
25
|
+
* `planLabel` is derived from `PLAN_ENTITLEMENTS` on every call, so a notice
|
|
26
|
+
* can never name a tier that no longer carries the feature.
|
|
27
|
+
*/ export function resolvePlanFeatureLock(input) {
|
|
28
|
+
const { org, ready, feature, orgSlug } = input;
|
|
29
|
+
const entitled = checkEntitlement(org, feature);
|
|
30
|
+
const planLabel = planLabelGrantingFeature(feature);
|
|
31
|
+
return {
|
|
32
|
+
ready,
|
|
33
|
+
entitled,
|
|
34
|
+
locked: ready === true && !entitled,
|
|
35
|
+
planLabel,
|
|
36
|
+
upgradeHref: orgSlug ? `/${orgSlug}/billing#${planLabel ? 'plans' : 'addons'}` : undefined
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* The one sentence a locked control carries, on hover and for a screen
|
|
41
|
+
* reader: "Scheduled publishing is included from Business."
|
|
42
|
+
*/ export function planLockReason(subject, planLabel) {
|
|
43
|
+
return planLabel ? `${subject} is included from ${planLabel}.` : `${subject} is a paid add-on.`;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
//# sourceMappingURL=plan-feature-lock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../../libs/tenant/feature/instance/src/lib/hooks/plan-feature-lock.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 */\nimport {\n checkEntitlement,\n planLabelGrantingFeature,\n type OrgFeatureFlags,\n} from '@aglyn/aglyn'\n\n/**\n * A plan-gated feature as a console surface draws it: on, locked with the\n * plan that unlocks it, or not yet known.\n */\nexport interface PlanFeatureLock {\n /** The plan doc has settled. NEVER refuse before this is true. */\n ready: boolean\n /** The plan (or a purchased add-on, or an override) includes the feature. */\n entitled: boolean\n /**\n * `ready && !entitled`: the one state in which a control is drawn disabled\n * with an upgrade path. A pending plan draws nothing locked, because\n * `checkEntitlement(undefined)` answers with the FREE tier and a paying\n * workspace would see its own feature refused while its doc loads.\n */\n locked: boolean\n /** The cheapest plan carrying the feature (\"Business\"), if any plan does. */\n planLabel: string | undefined\n /**\n * The console's plan grid (`/{org}/billing#plans`), or its add-ons section\n * for a feature no plan carries. Undefined until the org slug is known.\n */\n upgradeHref: string | undefined\n}\n\n/**\n * The lock state for one feature, from an org billing doc the caller already\n * holds: the console's `useCurrentOrg()`, or a plugin's `useOrgPlan`.\n *\n * Free sees what the paid plans add instead of a console with pieces missing,\n * so every surface that gates on a plan feature draws its control from this\n * one answer: disabled, with the plan that includes it and a link to buy it.\n *\n * `planLabel` is derived from `PLAN_ENTITLEMENTS` on every call, so a notice\n * can never name a tier that no longer carries the feature.\n */\nexport function resolvePlanFeatureLock(input: {\n org: unknown\n ready: boolean\n feature: keyof OrgFeatureFlags\n orgSlug: string | null | undefined\n}): PlanFeatureLock {\n const { org, ready, feature, orgSlug } = input\n const entitled = checkEntitlement(org as never, feature)\n const planLabel = planLabelGrantingFeature(feature)\n return {\n ready,\n entitled,\n locked: ready === true && !entitled,\n planLabel,\n upgradeHref: orgSlug\n ? `/${orgSlug}/billing#${planLabel ? 'plans' : 'addons'}`\n : undefined,\n }\n}\n\n/**\n * The one sentence a locked control carries, on hover and for a screen\n * reader: \"Scheduled publishing is included from Business.\"\n */\nexport function planLockReason(\n subject: string,\n planLabel: string | undefined,\n): string {\n return planLabel\n ? `${subject} is included from ${planLabel}.`\n : `${subject} is a paid add-on.`\n}\n"],"names":["checkEntitlement","planLabelGrantingFeature","resolvePlanFeatureLock","input","org","ready","feature","orgSlug","entitled","planLabel","locked","upgradeHref","undefined","planLockReason","subject"],"mappings":"AAAA;;;;;;;;;;;;;;;CAeC,GACD,SACEA,gBAAgB,EAChBC,wBAAwB,QAEnB,eAAc;AA2BrB;;;;;;;;;;CAUC,GACD,OAAO,SAASC,uBAAuBC,KAKtC;IACC,MAAM,EAAEC,GAAG,EAAEC,KAAK,EAAEC,OAAO,EAAEC,OAAO,EAAE,GAAGJ;IACzC,MAAMK,WAAWR,iBAAiBI,KAAcE;IAChD,MAAMG,YAAYR,yBAAyBK;IAC3C,OAAO;QACLD;QACAG;QACAE,QAAQL,UAAU,QAAQ,CAACG;QAC3BC;QACAE,aAAaJ,UACT,CAAC,CAAC,EAAEA,QAAQ,SAAS,EAAEE,YAAY,UAAU,UAAU,GACvDG;IACN;AACF;AAEA;;;CAGC,GACD,OAAO,SAASC,eACdC,OAAe,EACfL,SAA6B;IAE7B,OAAOA,YACH,GAAGK,QAAQ,kBAAkB,EAAEL,UAAU,CAAC,CAAC,GAC3C,GAAGK,QAAQ,kBAAkB,CAAC;AACpC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { OrgFeatureFlags } from '@aglyn/aglyn';
|
|
2
|
+
import { type PlanFeatureLock } from './plan-feature-lock';
|
|
3
|
+
/**
|
|
4
|
+
* {@link resolvePlanFeatureLock} for a site: its owning org's plan, and the
|
|
5
|
+
* org slug the upgrade link is built from.
|
|
6
|
+
*/
|
|
7
|
+
export declare function usePlanFeature(hostId: string | undefined, feature: keyof OrgFeatureFlags): PlanFeatureLock;
|
|
8
|
+
export default usePlanFeature;
|
|
@@ -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
|
+
*/ 'use client';
|
|
17
|
+
import { resolvePlanFeatureLock } from "./plan-feature-lock.js";
|
|
18
|
+
import { useConsoleHostRoute } from "./use-console-host-route.js";
|
|
19
|
+
import { useOrgPlan } from "./use-org-plan.js";
|
|
20
|
+
/**
|
|
21
|
+
* {@link resolvePlanFeatureLock} for a site: its owning org's plan, and the
|
|
22
|
+
* org slug the upgrade link is built from.
|
|
23
|
+
*/ export function usePlanFeature(hostId, feature) {
|
|
24
|
+
const { orgSlug } = useConsoleHostRoute(hostId);
|
|
25
|
+
const { org, ready } = useOrgPlan(hostId);
|
|
26
|
+
return resolvePlanFeatureLock({
|
|
27
|
+
org,
|
|
28
|
+
ready,
|
|
29
|
+
feature,
|
|
30
|
+
orgSlug
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
export default usePlanFeature;
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=use-plan-feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../../libs/tenant/feature/instance/src/lib/hooks/use-plan-feature.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'use client'\n\nimport type { OrgFeatureFlags } from '@aglyn/aglyn'\nimport { resolvePlanFeatureLock, type PlanFeatureLock } from './plan-feature-lock'\nimport { useConsoleHostRoute } from './use-console-host-route'\nimport { useOrgPlan } from './use-org-plan'\n\n/**\n * {@link resolvePlanFeatureLock} for a site: its owning org's plan, and the\n * org slug the upgrade link is built from.\n */\nexport function usePlanFeature(\n hostId: string | undefined,\n feature: keyof OrgFeatureFlags,\n): PlanFeatureLock {\n const { orgSlug } = useConsoleHostRoute(hostId)\n const { org, ready } = useOrgPlan(hostId)\n return resolvePlanFeatureLock({ org, ready, feature, orgSlug })\n}\n\nexport default usePlanFeature\n"],"names":["resolvePlanFeatureLock","useConsoleHostRoute","useOrgPlan","usePlanFeature","hostId","feature","orgSlug","org","ready"],"mappings":"AAAA;;;;;;;;;;;;;;;CAeC,GACD;AAGA,SAASA,sBAAsB,QAA8B,yBAAqB;AAClF,SAASC,mBAAmB,QAAQ,8BAA0B;AAC9D,SAASC,UAAU,QAAQ,oBAAgB;AAE3C;;;CAGC,GACD,OAAO,SAASC,eACdC,MAA0B,EAC1BC,OAA8B;IAE9B,MAAM,EAAEC,OAAO,EAAE,GAAGL,oBAAoBG;IACxC,MAAM,EAAEG,GAAG,EAAEC,KAAK,EAAE,GAAGN,WAAWE;IAClC,OAAOJ,uBAAuB;QAAEO;QAAKC;QAAOH;QAASC;IAAQ;AAC/D;AAEA,eAAeH,eAAc"}
|
package/src/lib/tenant.d.ts
CHANGED
|
@@ -50,6 +50,8 @@ export * from './hooks/use-container-options';
|
|
|
50
50
|
export * from './hooks/use-org-member-options';
|
|
51
51
|
export * from './hooks/use-org-plan';
|
|
52
52
|
export * from './hooks/use-merchant-payments';
|
|
53
|
+
export * from './hooks/plan-feature-lock';
|
|
54
|
+
export * from './hooks/use-plan-feature';
|
|
53
55
|
export * from './hooks/use-scope-tokens';
|
|
54
56
|
export * from './hooks/use-host-resource-api';
|
|
55
57
|
export * from './hooks/use-host-version-api';
|
package/src/lib/tenant.js
CHANGED
|
@@ -49,6 +49,8 @@ export * from "./hooks/use-container-options.js";
|
|
|
49
49
|
export * from "./hooks/use-org-member-options.js";
|
|
50
50
|
export * from "./hooks/use-org-plan.js";
|
|
51
51
|
export * from "./hooks/use-merchant-payments.js";
|
|
52
|
+
export * from "./hooks/plan-feature-lock.js";
|
|
53
|
+
export * from "./hooks/use-plan-feature.js";
|
|
52
54
|
export * from "./hooks/use-scope-tokens.js";
|
|
53
55
|
export * from "./hooks/use-host-resource-api.js";
|
|
54
56
|
export * from "./hooks/use-host-version-api.js";
|
package/src/lib/tenant.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../libs/tenant/feature/instance/src/lib/tenant.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2022 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\nexport * from './constants/mock-data'\nexport * from './constants/site-paths'\nexport * from './constants/firebase-config'\nexport * from './constants/firebase-emulator-hosts'\n\nexport * from './hooks/firebase/app-check-recaptcha-container'\nexport * from './hooks/firebase/auth-persistence'\nexport * from './hooks/firebase/firebase-services'\nexport * from './hooks/firebase/firestore-cache'\nexport * from './hooks/firebase/firestore-stall-recovery'\nexport * from './hooks/firebase/firestore-bounded-read'\nexport * from './hooks/helpers/use-doc'\nexport * from './hooks/helpers/use-modify-doc-callback'\nexport * from './hooks/helpers/besigner-nodes-converter'\nexport * from './hooks/helpers/guarded-nodes-save'\nexport * from './hooks/helpers/guarded-seed-write'\n\nexport * from './hooks/firestore-denial-reporter'\nexport * from './hooks/use-firestore-collection'\nexport * from './hooks/use-paged-collection'\nexport * from './hooks/use-sorted-paged-collection'\nexport * from './hooks/sorted-collection-window'\nexport * from './hooks/host-collection-queries'\nexport * from './hooks/list-filter-constraints'\nexport * from './hooks/use-firestore-doc'\nexport * from './hooks/use-switcher-collection'\nexport * from './hooks/use-host-activity-logger'\nexport * from './hooks/use-live-artifact-count'\nexport * from './hooks/use-component'\nexport * from './hooks/use-component-version'\nexport * from './hooks/use-host-document-version'\nexport * from './hooks/use-host-template'\nexport * from './hooks/use-console-host-route'\nexport * from './hooks/use-host-org-id'\nexport * from './hooks/use-container-options'\nexport * from './hooks/use-org-member-options'\nexport * from './hooks/use-org-plan'\nexport * from './hooks/use-merchant-payments'\nexport * from './hooks/use-scope-tokens'\nexport * from './hooks/use-host-resource-api'\nexport * from './hooks/use-host-version-api'\nexport * from './hooks/use-duplicate-resource-api'\nexport * from './hooks/use-plugin-api-post'\nexport * from './components/duplicate-resource-dialog'\nexport * from './hooks/use-plugin-config'\nexport * from './hooks/use-host'\nexport * from './hooks/use-layout'\nexport * from './hooks/use-layout-version'\nexport * from './hooks/use-screen'\nexport * from './hooks/use-screen-version'\nexport * from './hooks/use-user-name'\nexport * from './hooks/use-user-photo'\n"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;CAeC,GAED,cAAc,2BAAuB;AACrC,cAAc,4BAAwB;AACtC,cAAc,iCAA6B;AAC3C,cAAc,yCAAqC;AAEnD,cAAc,oDAAgD;AAC9D,cAAc,uCAAmC;AACjD,cAAc,wCAAoC;AAClD,cAAc,sCAAkC;AAChD,cAAc,+CAA2C;AACzD,cAAc,6CAAyC;AACvD,cAAc,6BAAyB;AACvC,cAAc,6CAAyC;AACvD,cAAc,8CAA0C;AACxD,cAAc,wCAAoC;AAClD,cAAc,wCAAoC;AAElD,cAAc,uCAAmC;AACjD,cAAc,sCAAkC;AAChD,cAAc,kCAA8B;AAC5C,cAAc,yCAAqC;AACnD,cAAc,sCAAkC;AAChD,cAAc,qCAAiC;AAC/C,cAAc,qCAAiC;AAC/C,cAAc,+BAA2B;AACzC,cAAc,qCAAiC;AAC/C,cAAc,sCAAkC;AAChD,cAAc,qCAAiC;AAC/C,cAAc,2BAAuB;AACrC,cAAc,mCAA+B;AAC7C,cAAc,uCAAmC;AACjD,cAAc,+BAA2B;AACzC,cAAc,oCAAgC;AAC9C,cAAc,6BAAyB;AACvC,cAAc,mCAA+B;AAC7C,cAAc,oCAAgC;AAC9C,cAAc,0BAAsB;AACpC,cAAc,mCAA+B;AAC7C,cAAc,8BAA0B;AACxC,cAAc,mCAA+B;AAC7C,cAAc,kCAA8B;AAC5C,cAAc,wCAAoC;AAClD,cAAc,iCAA6B;AAC3C,cAAc,4CAAwC;AACtD,cAAc,+BAA2B;AACzC,cAAc,sBAAkB;AAChC,cAAc,wBAAoB;AAClC,cAAc,gCAA4B;AAC1C,cAAc,wBAAoB;AAClC,cAAc,gCAA4B;AAC1C,cAAc,2BAAuB;AACrC,cAAc,4BAAwB"}
|
|
1
|
+
{"version":3,"sources":["../../../../../../../libs/tenant/feature/instance/src/lib/tenant.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2022 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\nexport * from './constants/mock-data'\nexport * from './constants/site-paths'\nexport * from './constants/firebase-config'\nexport * from './constants/firebase-emulator-hosts'\n\nexport * from './hooks/firebase/app-check-recaptcha-container'\nexport * from './hooks/firebase/auth-persistence'\nexport * from './hooks/firebase/firebase-services'\nexport * from './hooks/firebase/firestore-cache'\nexport * from './hooks/firebase/firestore-stall-recovery'\nexport * from './hooks/firebase/firestore-bounded-read'\nexport * from './hooks/helpers/use-doc'\nexport * from './hooks/helpers/use-modify-doc-callback'\nexport * from './hooks/helpers/besigner-nodes-converter'\nexport * from './hooks/helpers/guarded-nodes-save'\nexport * from './hooks/helpers/guarded-seed-write'\n\nexport * from './hooks/firestore-denial-reporter'\nexport * from './hooks/use-firestore-collection'\nexport * from './hooks/use-paged-collection'\nexport * from './hooks/use-sorted-paged-collection'\nexport * from './hooks/sorted-collection-window'\nexport * from './hooks/host-collection-queries'\nexport * from './hooks/list-filter-constraints'\nexport * from './hooks/use-firestore-doc'\nexport * from './hooks/use-switcher-collection'\nexport * from './hooks/use-host-activity-logger'\nexport * from './hooks/use-live-artifact-count'\nexport * from './hooks/use-component'\nexport * from './hooks/use-component-version'\nexport * from './hooks/use-host-document-version'\nexport * from './hooks/use-host-template'\nexport * from './hooks/use-console-host-route'\nexport * from './hooks/use-host-org-id'\nexport * from './hooks/use-container-options'\nexport * from './hooks/use-org-member-options'\nexport * from './hooks/use-org-plan'\nexport * from './hooks/use-merchant-payments'\nexport * from './hooks/plan-feature-lock'\nexport * from './hooks/use-plan-feature'\nexport * from './hooks/use-scope-tokens'\nexport * from './hooks/use-host-resource-api'\nexport * from './hooks/use-host-version-api'\nexport * from './hooks/use-duplicate-resource-api'\nexport * from './hooks/use-plugin-api-post'\nexport * from './components/duplicate-resource-dialog'\nexport * from './hooks/use-plugin-config'\nexport * from './hooks/use-host'\nexport * from './hooks/use-layout'\nexport * from './hooks/use-layout-version'\nexport * from './hooks/use-screen'\nexport * from './hooks/use-screen-version'\nexport * from './hooks/use-user-name'\nexport * from './hooks/use-user-photo'\n"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;CAeC,GAED,cAAc,2BAAuB;AACrC,cAAc,4BAAwB;AACtC,cAAc,iCAA6B;AAC3C,cAAc,yCAAqC;AAEnD,cAAc,oDAAgD;AAC9D,cAAc,uCAAmC;AACjD,cAAc,wCAAoC;AAClD,cAAc,sCAAkC;AAChD,cAAc,+CAA2C;AACzD,cAAc,6CAAyC;AACvD,cAAc,6BAAyB;AACvC,cAAc,6CAAyC;AACvD,cAAc,8CAA0C;AACxD,cAAc,wCAAoC;AAClD,cAAc,wCAAoC;AAElD,cAAc,uCAAmC;AACjD,cAAc,sCAAkC;AAChD,cAAc,kCAA8B;AAC5C,cAAc,yCAAqC;AACnD,cAAc,sCAAkC;AAChD,cAAc,qCAAiC;AAC/C,cAAc,qCAAiC;AAC/C,cAAc,+BAA2B;AACzC,cAAc,qCAAiC;AAC/C,cAAc,sCAAkC;AAChD,cAAc,qCAAiC;AAC/C,cAAc,2BAAuB;AACrC,cAAc,mCAA+B;AAC7C,cAAc,uCAAmC;AACjD,cAAc,+BAA2B;AACzC,cAAc,oCAAgC;AAC9C,cAAc,6BAAyB;AACvC,cAAc,mCAA+B;AAC7C,cAAc,oCAAgC;AAC9C,cAAc,0BAAsB;AACpC,cAAc,mCAA+B;AAC7C,cAAc,+BAA2B;AACzC,cAAc,8BAA0B;AACxC,cAAc,8BAA0B;AACxC,cAAc,mCAA+B;AAC7C,cAAc,kCAA8B;AAC5C,cAAc,wCAAoC;AAClD,cAAc,iCAA6B;AAC3C,cAAc,4CAAwC;AACtD,cAAc,+BAA2B;AACzC,cAAc,sBAAkB;AAChC,cAAc,wBAAoB;AAClC,cAAc,gCAA4B;AAC1C,cAAc,wBAAoB;AAClC,cAAc,gCAA4B;AAC1C,cAAc,2BAAuB;AACrC,cAAc,4BAAwB"}
|