@flamingo-stack/openframe-frontend-core 0.0.683-2453.7420.1 → 0.0.683
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/{chunk-RXVFDCZG.js → chunk-27QEVTIV.js} +2 -2
- package/dist/{chunk-H4MWNJEN.cjs → chunk-3DEDWUU7.cjs} +3 -3
- package/dist/{chunk-H4MWNJEN.cjs.map → chunk-3DEDWUU7.cjs.map} +1 -1
- package/dist/{chunk-325BPWHV.js → chunk-6KT5JW4J.js} +5 -5
- package/dist/{chunk-NMNFUW7W.js → chunk-74WGX4ZK.js} +5 -5
- package/dist/{chunk-DGPQ7SDN.cjs → chunk-7X3TSX4I.cjs} +10 -2
- package/dist/chunk-7X3TSX4I.cjs.map +1 -0
- package/dist/{chunk-ZVRVMJTL.cjs → chunk-A5AREJ7O.cjs} +18 -18
- package/dist/{chunk-ZVRVMJTL.cjs.map → chunk-A5AREJ7O.cjs.map} +1 -1
- package/dist/{chunk-WHLWSMI5.js → chunk-A6MF3SIG.js} +3 -3
- package/dist/{chunk-ND4YQJUE.cjs → chunk-DW74BS7L.cjs} +17 -17
- package/dist/{chunk-ND4YQJUE.cjs.map → chunk-DW74BS7L.cjs.map} +1 -1
- package/dist/{chunk-XXGQUVFO.cjs → chunk-GBPZLJEO.cjs} +10 -10
- package/dist/{chunk-XXGQUVFO.cjs.map → chunk-GBPZLJEO.cjs.map} +1 -1
- package/dist/{chunk-UXV77VAJ.js → chunk-HAYVT674.js} +2 -2
- package/dist/{chunk-5ERJPXKL.js → chunk-IDKJV35M.js} +2 -2
- package/dist/{chunk-Y6NJCG2F.cjs → chunk-IPFZ5TRP.cjs} +4 -4
- package/dist/{chunk-Y6NJCG2F.cjs.map → chunk-IPFZ5TRP.cjs.map} +1 -1
- package/dist/{chunk-YPQSZEF3.js → chunk-JXGYPSOL.js} +2 -2
- package/dist/{chunk-R24HDQHH.js → chunk-KNYO6YX3.js} +2 -2
- package/dist/{chunk-AWZSP7PN.js → chunk-KULLOTS2.js} +2 -2
- package/dist/{chunk-MKBYCHZZ.cjs → chunk-LLCUXXPW.cjs} +33 -33
- package/dist/{chunk-MKBYCHZZ.cjs.map → chunk-LLCUXXPW.cjs.map} +1 -1
- package/dist/{chunk-D5MMX7WM.js → chunk-NAKKGHU3.js} +2 -2
- package/dist/{chunk-L7TFT7T3.cjs → chunk-NIWIOUSY.cjs} +3 -3
- package/dist/{chunk-L7TFT7T3.cjs.map → chunk-NIWIOUSY.cjs.map} +1 -1
- package/dist/{chunk-4H5DDABI.js → chunk-OSDE6BXU.js} +2 -2
- package/dist/{chunk-UMYRFI5B.cjs → chunk-Q3CSHLFJ.cjs} +51 -51
- package/dist/{chunk-UMYRFI5B.cjs.map → chunk-Q3CSHLFJ.cjs.map} +1 -1
- package/dist/{chunk-TQFNFMGO.cjs → chunk-RPWBOWY6.cjs} +4 -4
- package/dist/{chunk-TQFNFMGO.cjs.map → chunk-RPWBOWY6.cjs.map} +1 -1
- package/dist/{chunk-XQQYMP7D.js → chunk-STQYRS3J.js} +9 -1
- package/dist/chunk-STQYRS3J.js.map +1 -0
- package/dist/{chunk-BQII6F44.cjs → chunk-UO7JVTPW.cjs} +3 -3
- package/dist/{chunk-BQII6F44.cjs.map → chunk-UO7JVTPW.cjs.map} +1 -1
- package/dist/{chunk-QKXDT4L2.cjs → chunk-V6ZJY5F6.cjs} +3 -3
- package/dist/{chunk-QKXDT4L2.cjs.map → chunk-V6ZJY5F6.cjs.map} +1 -1
- package/dist/{chunk-EX7ANL73.cjs → chunk-WIONAKXI.cjs} +13 -13
- package/dist/{chunk-EX7ANL73.cjs.map → chunk-WIONAKXI.cjs.map} +1 -1
- package/dist/{chunk-YRTI6VJE.js → chunk-WZPYIOF2.js} +4 -4
- package/dist/{chunk-HNEVJK5K.js → chunk-XKA3GVR6.js} +4 -4
- package/dist/{chunk-Z2YYFGIY.cjs → chunk-Y4YMPWOQ.cjs} +17 -17
- package/dist/{chunk-Z2YYFGIY.cjs.map → chunk-Y4YMPWOQ.cjs.map} +1 -1
- package/dist/{chunk-MJSHUJAV.js → chunk-Y54SLPBA.js} +2 -2
- package/dist/{chunk-EIPRHSCB.cjs → chunk-ZH7U2IG5.cjs} +36 -36
- package/dist/{chunk-EIPRHSCB.cjs.map → chunk-ZH7U2IG5.cjs.map} +1 -1
- package/dist/components/case-studies/index.cjs +11 -11
- package/dist/components/case-studies/index.js +2 -2
- package/dist/components/contact/index.cjs +3 -3
- package/dist/components/contact/index.js +2 -2
- package/dist/components/docs/index.cjs +6 -6
- package/dist/components/docs/index.js +5 -5
- package/dist/components/embeds/index.cjs +3 -3
- package/dist/components/embeds/index.js +2 -2
- package/dist/components/faq/index.cjs +3 -3
- package/dist/components/faq/index.js +2 -2
- package/dist/components/features/index.cjs +2 -2
- package/dist/components/features/index.js +1 -1
- package/dist/components/footer.d.ts.map +1 -1
- package/dist/components/help-center-pages/index.cjs +49 -49
- package/dist/components/help-center-pages/index.js +13 -13
- package/dist/components/index.cjs +33 -38
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.js +14 -19
- package/dist/components/index.js.map +1 -1
- package/dist/components/meeting-scheduler/index.cjs +22 -22
- package/dist/components/meeting-scheduler/index.js +1 -1
- package/dist/components/navigation/index.cjs +5 -5
- package/dist/components/navigation/index.js +4 -4
- package/dist/components/onboarding-guides/index.cjs +5 -5
- package/dist/components/onboarding-guides/index.js +4 -4
- package/dist/components/tickets/index.cjs +6 -6
- package/dist/components/tickets/index.js +5 -5
- package/dist/components/ui/index.cjs +2 -2
- package/dist/components/ui/index.js +1 -1
- package/dist/index.cjs +8 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +7 -5
- package/dist/index.js.map +1 -1
- package/dist/utils/copyright-line.d.ts +7 -0
- package/dist/utils/copyright-line.d.ts.map +1 -0
- package/dist/utils/index.cjs +8 -0
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +8 -1
- package/dist/utils/index.js.map +1 -1
- package/package.json +1 -1
- package/src/components/footer.tsx +2 -1
- package/src/utils/__tests__/copyright-line.test.ts +12 -0
- package/src/utils/copyright-line.ts +10 -0
- package/src/utils/index.ts +3 -0
- package/dist/chunk-DGPQ7SDN.cjs.map +0 -1
- package/dist/chunk-XQQYMP7D.js.map +0 -1
- /package/dist/{chunk-RXVFDCZG.js.map → chunk-27QEVTIV.js.map} +0 -0
- /package/dist/{chunk-325BPWHV.js.map → chunk-6KT5JW4J.js.map} +0 -0
- /package/dist/{chunk-NMNFUW7W.js.map → chunk-74WGX4ZK.js.map} +0 -0
- /package/dist/{chunk-WHLWSMI5.js.map → chunk-A6MF3SIG.js.map} +0 -0
- /package/dist/{chunk-UXV77VAJ.js.map → chunk-HAYVT674.js.map} +0 -0
- /package/dist/{chunk-5ERJPXKL.js.map → chunk-IDKJV35M.js.map} +0 -0
- /package/dist/{chunk-YPQSZEF3.js.map → chunk-JXGYPSOL.js.map} +0 -0
- /package/dist/{chunk-R24HDQHH.js.map → chunk-KNYO6YX3.js.map} +0 -0
- /package/dist/{chunk-AWZSP7PN.js.map → chunk-KULLOTS2.js.map} +0 -0
- /package/dist/{chunk-D5MMX7WM.js.map → chunk-NAKKGHU3.js.map} +0 -0
- /package/dist/{chunk-4H5DDABI.js.map → chunk-OSDE6BXU.js.map} +0 -0
- /package/dist/{chunk-YRTI6VJE.js.map → chunk-WZPYIOF2.js.map} +0 -0
- /package/dist/{chunk-HNEVJK5K.js.map → chunk-XKA3GVR6.js.map} +0 -0
- /package/dist/{chunk-MJSHUJAV.js.map → chunk-Y54SLPBA.js.map} +0 -0
package/package.json
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { Suspense } from 'react';
|
|
4
4
|
import type { ReactNode } from 'react';
|
|
5
|
+
import { copyrightLine } from '../utils/copyright-line';
|
|
5
6
|
import { SocialIconRow } from './social-icon-row';
|
|
6
7
|
import { Skeleton } from './ui/skeleton';
|
|
7
8
|
|
|
@@ -187,7 +188,7 @@ function UniversalFooter({
|
|
|
187
188
|
|
|
188
189
|
{/* Copyright */}
|
|
189
190
|
<p className="text-md md:text-md w-full pt-4 text-center font-body font-medium leading-[1.33] text-ods-text-muted md:pt-0">
|
|
190
|
-
|
|
191
|
+
{copyrightLine(config.legalName)}
|
|
191
192
|
</p>
|
|
192
193
|
</footer>
|
|
193
194
|
);
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import { copyrightLine } from '../copyright-line';
|
|
3
|
+
|
|
4
|
+
describe('copyrightLine', () => {
|
|
5
|
+
it('does not double the period of a legal name that ends in one', () => {
|
|
6
|
+
expect(copyrightLine('Flamingo AI, Inc.', 2026)).toBe('© 2026 Flamingo AI, Inc. All rights reserved.');
|
|
7
|
+
});
|
|
8
|
+
|
|
9
|
+
it('closes a legal name without a period', () => {
|
|
10
|
+
expect(copyrightLine('Flamingo', 2026)).toBe('© 2026 Flamingo. All rights reserved.');
|
|
11
|
+
});
|
|
12
|
+
});
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The footer copyright line: `© <year> <legal name>. All rights reserved.`
|
|
3
|
+
* ONE owner, so a legal name that already ends in a period ("Flamingo AI, Inc.")
|
|
4
|
+
* never renders a double period.
|
|
5
|
+
*/
|
|
6
|
+
export function copyrightLine(legalName: string, year: number = new Date().getFullYear()): string {
|
|
7
|
+
const name = legalName.trim();
|
|
8
|
+
const sentenceEnd = /[.!?]$/.test(name) ? '' : '.';
|
|
9
|
+
return `© ${year} ${name}${sentenceEnd} All rights reserved.`;
|
|
10
|
+
}
|
package/src/utils/index.ts
CHANGED
|
@@ -445,3 +445,6 @@ export {
|
|
|
445
445
|
// line from one set rather than mirroring the triple.
|
|
446
446
|
export { PROGRAM_META_RENDERERS } from './program-meta-renderers';
|
|
447
447
|
export type { ProgramDateFields, ProgramInstant, ProgramMetaRenderers } from './program-instant';
|
|
448
|
+
|
|
449
|
+
// Footer copyright line (one owner; never a double period after "Inc.").
|
|
450
|
+
export { copyrightLine } from './copyright-line';
|