@revvue/embed 0.0.0-beta.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.
Files changed (125) hide show
  1. package/README.md +1 -0
  2. package/dist/browser/css/dialog.css +1 -0
  3. package/dist/browser/css/drawer.css +1 -0
  4. package/dist/browser/css/popover.css +1 -0
  5. package/dist/browser/css/widget.css +1 -0
  6. package/dist/browser/embed.js +2 -0
  7. package/dist/package/css/dialog.css +1 -0
  8. package/dist/package/css/drawer.css +1 -0
  9. package/dist/package/css/popover.css +1 -0
  10. package/dist/package/css/widget.css +1 -0
  11. package/dist/package/package.cjs +383 -0
  12. package/dist/package/package.mjs +376 -0
  13. package/dist/package/types/config/contants.d.ts +2 -0
  14. package/dist/package/types/config/contants.d.ts.map +1 -0
  15. package/dist/package/types/config/env.d.ts +8 -0
  16. package/dist/package/types/config/env.d.ts.map +1 -0
  17. package/dist/package/types/core/app-options.d.ts +18 -0
  18. package/dist/package/types/core/app-options.d.ts.map +1 -0
  19. package/dist/package/types/core/appearance-options.d.ts +5 -0
  20. package/dist/package/types/core/appearance-options.d.ts.map +1 -0
  21. package/dist/package/types/core/button-options.d.ts +38 -0
  22. package/dist/package/types/core/button-options.d.ts.map +1 -0
  23. package/dist/package/types/core/common.d.ts +8 -0
  24. package/dist/package/types/core/common.d.ts.map +1 -0
  25. package/dist/package/types/core/create-iframe.d.ts +10 -0
  26. package/dist/package/types/core/create-iframe.d.ts.map +1 -0
  27. package/dist/package/types/core/create-iframe.spec.d.ts +2 -0
  28. package/dist/package/types/core/create-iframe.spec.d.ts.map +1 -0
  29. package/dist/package/types/core/embed-apps.d.ts +2 -0
  30. package/dist/package/types/core/embed-apps.d.ts.map +1 -0
  31. package/dist/package/types/core/embed-types.d.ts +12 -0
  32. package/dist/package/types/core/embed-types.d.ts.map +1 -0
  33. package/dist/package/types/embed/fetch-embed.d.ts +4 -0
  34. package/dist/package/types/embed/fetch-embed.d.ts.map +1 -0
  35. package/dist/package/types/embed/mount-embeds.d.ts +2 -0
  36. package/dist/package/types/embed/mount-embeds.d.ts.map +1 -0
  37. package/dist/package/types/factories/create-dialog/create-dialog.d.ts +5 -0
  38. package/dist/package/types/factories/create-dialog/create-dialog.d.ts.map +1 -0
  39. package/dist/package/types/factories/create-dialog/create-dialog.spec.d.ts +2 -0
  40. package/dist/package/types/factories/create-dialog/create-dialog.spec.d.ts.map +1 -0
  41. package/dist/package/types/factories/create-dialog/index.d.ts +2 -0
  42. package/dist/package/types/factories/create-dialog/index.d.ts.map +1 -0
  43. package/dist/package/types/factories/create-drawer/create-drawer.d.ts +6 -0
  44. package/dist/package/types/factories/create-drawer/create-drawer.d.ts.map +1 -0
  45. package/dist/package/types/factories/create-drawer/create-drawer.spec.d.ts +2 -0
  46. package/dist/package/types/factories/create-drawer/create-drawer.spec.d.ts.map +1 -0
  47. package/dist/package/types/factories/create-drawer/index.d.ts +2 -0
  48. package/dist/package/types/factories/create-drawer/index.d.ts.map +1 -0
  49. package/dist/package/types/factories/create-popover/create-popover.d.ts +6 -0
  50. package/dist/package/types/factories/create-popover/create-popover.d.ts.map +1 -0
  51. package/dist/package/types/factories/create-popover/create-popover.spec.d.ts +2 -0
  52. package/dist/package/types/factories/create-popover/create-popover.spec.d.ts.map +1 -0
  53. package/dist/package/types/factories/create-popover/index.d.ts +2 -0
  54. package/dist/package/types/factories/create-popover/index.d.ts.map +1 -0
  55. package/dist/package/types/factories/create-widget/create-widget.d.ts +5 -0
  56. package/dist/package/types/factories/create-widget/create-widget.d.ts.map +1 -0
  57. package/dist/package/types/factories/create-widget/create-widget.spec.d.ts +2 -0
  58. package/dist/package/types/factories/create-widget/create-widget.spec.d.ts.map +1 -0
  59. package/dist/package/types/factories/create-widget/index.d.ts +2 -0
  60. package/dist/package/types/factories/create-widget/index.d.ts.map +1 -0
  61. package/dist/package/types/factories/index.d.ts +5 -0
  62. package/dist/package/types/factories/index.d.ts.map +1 -0
  63. package/dist/package/types/package.d.ts +8 -0
  64. package/dist/package/types/package.d.ts.map +1 -0
  65. package/dist/package/types/test/fixtures.d.ts +16 -0
  66. package/dist/package/types/test/fixtures.d.ts.map +1 -0
  67. package/dist/package/types/test/setup.d.ts +1 -0
  68. package/dist/package/types/test/setup.d.ts.map +1 -0
  69. package/dist/package/types/utils/brand-types.d.ts +4 -0
  70. package/dist/package/types/utils/brand-types.d.ts.map +1 -0
  71. package/dist/package/types/utils/built-button/built-button.d.ts +8 -0
  72. package/dist/package/types/utils/built-button/built-button.d.ts.map +1 -0
  73. package/dist/package/types/utils/built-button/index.d.ts +2 -0
  74. package/dist/package/types/utils/built-button/index.d.ts.map +1 -0
  75. package/dist/package/types/utils/create-env.d.ts +12 -0
  76. package/dist/package/types/utils/create-env.d.ts.map +1 -0
  77. package/dist/package/types/utils/is.d.ts +10 -0
  78. package/dist/package/types/utils/is.d.ts.map +1 -0
  79. package/dist/package/types/utils/keyboard-events.d.ts +3 -0
  80. package/dist/package/types/utils/keyboard-events.d.ts.map +1 -0
  81. package/dist/package/types/utils/load-css.d.ts +3 -0
  82. package/dist/package/types/utils/load-css.d.ts.map +1 -0
  83. package/dist/package/types/utils/merge-options.d.ts +2 -0
  84. package/dist/package/types/utils/merge-options.d.ts.map +1 -0
  85. package/dist/package/types/utils/refresh-iframe.d.ts +2 -0
  86. package/dist/package/types/utils/refresh-iframe.d.ts.map +1 -0
  87. package/dist/package/types/utils/set-element-size.d.ts +8 -0
  88. package/dist/package/types/utils/set-element-size.d.ts.map +1 -0
  89. package/dist/types/config/env.d.ts +6 -0
  90. package/dist/types/config/env.d.ts.map +1 -0
  91. package/dist/types/core/app-options.d.ts +17 -0
  92. package/dist/types/core/app-options.d.ts.map +1 -0
  93. package/dist/types/core/common.d.ts +8 -0
  94. package/dist/types/core/common.d.ts.map +1 -0
  95. package/dist/types/core/embed-apps.d.ts +2 -0
  96. package/dist/types/core/embed-apps.d.ts.map +1 -0
  97. package/dist/types/core/embed-types.d.ts +2 -0
  98. package/dist/types/core/embed-types.d.ts.map +1 -0
  99. package/dist/types/dynamic-app/fetch-dynamic-app.d.ts +4 -0
  100. package/dist/types/dynamic-app/fetch-dynamic-app.d.ts.map +1 -0
  101. package/dist/types/factories/create-dialog/create-dialog.d.ts +3 -0
  102. package/dist/types/factories/create-dialog/create-dialog.d.ts.map +1 -0
  103. package/dist/types/factories/create-dialog/index.d.ts +2 -0
  104. package/dist/types/factories/create-dialog/index.d.ts.map +1 -0
  105. package/dist/types/factories/create-drawer/create-drawer.d.ts +3 -0
  106. package/dist/types/factories/create-drawer/create-drawer.d.ts.map +1 -0
  107. package/dist/types/factories/create-drawer/index.d.ts +2 -0
  108. package/dist/types/factories/create-drawer/index.d.ts.map +1 -0
  109. package/dist/types/factories/create-popup/create-popup.d.ts +3 -0
  110. package/dist/types/factories/create-popup/create-popup.d.ts.map +1 -0
  111. package/dist/types/factories/create-popup/index.d.ts +2 -0
  112. package/dist/types/factories/create-popup/index.d.ts.map +1 -0
  113. package/dist/types/factories/create-widget/create-widget.d.ts +3 -0
  114. package/dist/types/factories/create-widget/create-widget.d.ts.map +1 -0
  115. package/dist/types/factories/create-widget/index.d.ts +2 -0
  116. package/dist/types/factories/create-widget/index.d.ts.map +1 -0
  117. package/dist/types/factories/index.d.ts +5 -0
  118. package/dist/types/factories/index.d.ts.map +1 -0
  119. package/dist/types/package.d.ts +2 -0
  120. package/dist/types/package.d.ts.map +1 -0
  121. package/dist/types/utils/brand-types.d.ts +4 -0
  122. package/dist/types/utils/brand-types.d.ts.map +1 -0
  123. package/dist/types/utils/create-env.d.ts +12 -0
  124. package/dist/types/utils/create-env.d.ts.map +1 -0
  125. package/package.json +48 -0
@@ -0,0 +1,2 @@
1
+ export * from './create-widget';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/factories/create-widget/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export * from './create-dialog';
2
+ export * from './create-drawer';
3
+ export * from './create-popover';
4
+ export * from './create-widget';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,8 @@
1
+ export * from './core/app-options';
2
+ export * from './core/appearance-options';
3
+ export * from './core/button-options';
4
+ export * from './core/common';
5
+ export * from './core/embed-apps';
6
+ export * from './core/embed-types';
7
+ export * from './factories';
8
+ //# sourceMappingURL=package.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../../src/package.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { EmbedOptions } from '../core/app-options';
2
+ /**
3
+ * Returns a minimal valid EmbedOptions object for use in tests.
4
+ * Override any field via the second argument.
5
+ */
6
+ export declare const makeOptions: (overrides?: Partial<EmbedOptions>) => EmbedOptions;
7
+ /**
8
+ * Creates a fresh container div appended to document.body.
9
+ * Keeps tests isolated — document.body is cleared in afterEach by setup.ts.
10
+ */
11
+ export declare const makeContainer: () => HTMLDivElement;
12
+ /**
13
+ * Simulate a trusted iframe load event (the guard used in all factories).
14
+ */
15
+ export declare const triggerIframeLoad: (container: HTMLElement) => void;
16
+ //# sourceMappingURL=fixtures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../../../src/test/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGxD;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,YAAW,OAAO,CAAC,YAAY,CAAM,KAAG,YAMhD,CAAC;AAErB;;;GAGG;AACH,eAAO,MAAM,aAAa,QAAO,cAIhC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,WAAW,WAAW,KAAG,IAI1D,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../../src/test/setup.ts"],"names":[],"mappings":"AAAA,OAAO,kCAAkC,CAAC"}
@@ -0,0 +1,4 @@
1
+ export type Brand<T, B extends string> = T & {
2
+ __brand: B;
3
+ };
4
+ //# sourceMappingURL=brand-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brand-types.d.ts","sourceRoot":"","sources":["../../../../src/utils/brand-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,IAAI,CAAC,GAAG;IAAE,OAAO,EAAE,CAAC,CAAA;CAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { ButtonOptions } from '../../core/button-options';
2
+ export type ButtonElementResult = {
3
+ el: HTMLButtonElement;
4
+ /** Updates the button's visual state. No-op when a custom icon is provided. */
5
+ setOpen: (isOpen: boolean) => void;
6
+ };
7
+ export declare function buildButtonElement(options: ButtonOptions): ButtonElementResult;
8
+ //# sourceMappingURL=built-button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"built-button.d.ts","sourceRoot":"","sources":["../../../../../src/utils/built-button/built-button.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAmB/D,MAAM,MAAM,mBAAmB,GAAG;IAChC,EAAE,EAAE,iBAAiB,CAAC;IACtB,+EAA+E;IAC/E,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,mBAAmB,CA0C9E"}
@@ -0,0 +1,2 @@
1
+ export * from './built-button';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/utils/built-button/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,12 @@
1
+ type EnvField<T> = {
2
+ default?: T;
3
+ required?: boolean;
4
+ parse?: (value: string) => T;
5
+ };
6
+ type EnvSchema = Record<string, EnvField<unknown>>;
7
+ type InferEnv<S extends EnvSchema> = {
8
+ [K in keyof S]: S[K] extends EnvField<infer T> ? T : never;
9
+ };
10
+ export declare function createEnv<S extends EnvSchema>(schema: S, source?: Record<string, string | undefined>): InferEnv<S>;
11
+ export {};
12
+ //# sourceMappingURL=create-env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-env.d.ts","sourceRoot":"","sources":["../../../../src/utils/create-env.ts"],"names":[],"mappings":"AAAA,KAAK,QAAQ,CAAC,CAAC,IAAI;IACjB,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,CAAC;CAC9B,CAAC;AAEF,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AAEnD,KAAK,QAAQ,CAAC,CAAC,SAAS,SAAS,IAAI;KAClC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CAC3D,CAAC;AAEF,wBAAgB,SAAS,CAAC,CAAC,SAAS,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAkBtH"}
@@ -0,0 +1,10 @@
1
+ export interface HTMLElementWithParentNode extends HTMLElement {
2
+ parentNode: Node & ParentNode;
3
+ }
4
+ export declare const is: {
5
+ readonly open: (element: HTMLElement) => element is HTMLElementWithParentNode;
6
+ readonly inPage: (element: HTMLElement) => boolean;
7
+ readonly visible: (element: HTMLElement) => boolean;
8
+ readonly browser: () => boolean;
9
+ };
10
+ //# sourceMappingURL=is.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is.d.ts","sourceRoot":"","sources":["../../../../src/utils/is.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,yBAA0B,SAAQ,WAAW;IAC5D,UAAU,EAAE,IAAI,GAAG,UAAU,CAAC;CAC/B;AAcD,eAAO,MAAM,EAAE;6BAZU,WAAW,KAAG,OAAO,IAAI,yBAAyB;+BAIhD,WAAW,KAAG,OAAO;gCAEpB,WAAW,KAAG,OAAO;;CAWvC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare function addCustomKeydownListener(callback: (e: KeyboardEvent) => void): AbortController;
2
+ export declare function onEscape(callback: () => void): void;
3
+ //# sourceMappingURL=keyboard-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyboard-events.d.ts","sourceRoot":"","sources":["../../../../src/utils/keyboard-events.ts"],"names":[],"mappings":"AAAA,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,aAAa,KAAK,IAAI,mBAM5E;AAED,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,QAO5C"}
@@ -0,0 +1,3 @@
1
+ import { EmbedType } from '../core/embed-types';
2
+ export declare const loadCss: (embedType: EmbedType) => void;
3
+ //# sourceMappingURL=load-css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-css.d.ts","sourceRoot":"","sources":["../../../../src/utils/load-css.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAWrD,eAAO,MAAM,OAAO,GAAI,WAAW,SAAS,SAS3C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const mergeOptions: (...args: Array<Record<string, undefined | string | boolean | number | Record<string, unknown>>>) => Record<string, string | number | boolean | Record<string, unknown> | undefined>;
2
+ //# sourceMappingURL=merge-options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merge-options.d.ts","sourceRoot":"","sources":["../../../../src/utils/merge-options.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,GAAI,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,oFAepH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function refreshIframe(iframe?: HTMLIFrameElement): void;
2
+ //# sourceMappingURL=refresh-iframe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refresh-iframe.d.ts","sourceRoot":"","sources":["../../../../src/utils/refresh-iframe.ts"],"names":[],"mappings":"AAAA,wBAAgB,aAAa,CAAC,MAAM,CAAC,EAAE,iBAAiB,QAavD"}
@@ -0,0 +1,8 @@
1
+ interface ElementSize {
2
+ width?: number | string;
3
+ height?: number | string;
4
+ }
5
+ export declare const getValueWithUnits: (value: number | string) => string;
6
+ export declare const setElementSize: (element: HTMLElement, { width, height }: ElementSize) => HTMLElement;
7
+ export {};
8
+ //# sourceMappingURL=set-element-size.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set-element-size.d.ts","sourceRoot":"","sources":["../../../../src/utils/set-element-size.ts"],"names":[],"mappings":"AAAA,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,iBAAiB,GAAI,OAAO,MAAM,GAAG,MAAM,KAAG,MAM1D,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,SAAS,WAAW,EAAE,mBAAmB,WAAW,gBAKlF,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare const env: {
2
+ CHAT_URL: string;
3
+ FORM_URL: string;
4
+ DEBUG: boolean;
5
+ };
6
+ //# sourceMappingURL=env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../../src/config/env.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,GAAG;;;;CAiBf,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { TenantId } from "./common";
2
+ import { EmbedApp } from "./embed-apps";
3
+ import { EmbedType } from "./embed-types";
4
+ export interface BaseAppOptions {
5
+ tenant: TenantId;
6
+ type: EmbedType;
7
+ app: EmbedApp;
8
+ }
9
+ export interface ChatAppOptions extends BaseAppOptions {
10
+ app: "chat";
11
+ }
12
+ export interface FormAppOptions extends BaseAppOptions {
13
+ app: "form";
14
+ formId: string;
15
+ }
16
+ export type AppOptions = ChatAppOptions | FormAppOptions;
17
+ //# sourceMappingURL=app-options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-options.d.ts","sourceRoot":"","sources":["../../../src/core/app-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,QAAQ,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,EAAE,QAAQ,CAAC;CACf;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc;IACpD,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc;IACpD,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,UAAU,GAAG,cAAc,GAAG,cAAc,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { Brand } from "../utils/brand-types";
2
+ export type TenantId = Brand<string, "TenantId">;
3
+ export type FormId = Brand<string, "FormId">;
4
+ export type DynamicAppId = Brand<string, "DynamicAppId">;
5
+ export declare const tenantId: (id: string) => TenantId;
6
+ export declare const formId: (id: string) => FormId;
7
+ export declare const dynamicAppId: (id: string) => DynamicAppId;
8
+ //# sourceMappingURL=common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/core/common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AACjD,MAAM,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAC7C,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AAEzD,eAAO,MAAM,QAAQ,GAAI,IAAI,MAAM,KAAG,QAA0B,CAAC;AACjE,eAAO,MAAM,MAAM,GAAI,IAAI,MAAM,KAAG,MAAsB,CAAC;AAC3D,eAAO,MAAM,YAAY,GAAI,IAAI,MAAM,KAAG,YAAkC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export type EmbedApp = "chat" | "form";
2
+ //# sourceMappingURL=embed-apps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embed-apps.d.ts","sourceRoot":"","sources":["../../../src/core/embed-apps.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC"}
@@ -0,0 +1,2 @@
1
+ export type EmbedType = "widget" | "popup" | "drawer" | "dialog";
2
+ //# sourceMappingURL=embed-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embed-types.d.ts","sourceRoot":"","sources":["../../../src/core/embed-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { AppOptions } from "../core/app-options";
2
+ import { DynamicAppId } from "../core/common";
3
+ export declare function fetchDynamicApp(id: DynamicAppId): Promise<AppOptions>;
4
+ //# sourceMappingURL=fetch-dynamic-app.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch-dynamic-app.d.ts","sourceRoot":"","sources":["../../../src/dynamic-app/fetch-dynamic-app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,wBAAsB,eAAe,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAE3E"}
@@ -0,0 +1,3 @@
1
+ import { AppOptions } from "../../core/app-options";
2
+ export declare function createDialog(options: AppOptions, element: HTMLElement): void;
3
+ //# sourceMappingURL=create-dialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-dialog.d.ts","sourceRoot":"","sources":["../../../../src/factories/create-dialog/create-dialog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,wBAAgB,YAAY,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,QAErE"}
@@ -0,0 +1,2 @@
1
+ export * from "./create-dialog";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/factories/create-dialog/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { AppOptions } from "../../core/app-options";
2
+ export declare function createDrawer(options: AppOptions, element: HTMLElement): void;
3
+ //# sourceMappingURL=create-drawer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-drawer.d.ts","sourceRoot":"","sources":["../../../../src/factories/create-drawer/create-drawer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,wBAAgB,YAAY,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,QAErE"}
@@ -0,0 +1,2 @@
1
+ export * from "./create-drawer";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/factories/create-drawer/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { AppOptions } from "../../core/app-options";
2
+ export declare function createPopup(options: AppOptions, element: HTMLElement): void;
3
+ //# sourceMappingURL=create-popup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-popup.d.ts","sourceRoot":"","sources":["../../../../src/factories/create-popup/create-popup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,wBAAgB,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,QAEpE"}
@@ -0,0 +1,2 @@
1
+ export * from "./create-popup";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/factories/create-popup/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { AppOptions } from "../../core/app-options";
2
+ export declare function createWidget(options: AppOptions, element: HTMLElement): void;
3
+ //# sourceMappingURL=create-widget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-widget.d.ts","sourceRoot":"","sources":["../../../../src/factories/create-widget/create-widget.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,wBAAgB,YAAY,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,QAErE"}
@@ -0,0 +1,2 @@
1
+ export * from "./create-widget";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/factories/create-widget/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export * from "./create-widget";
2
+ export * from "./create-popup";
3
+ export * from "./create-drawer";
4
+ export * from "./create-dialog";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/factories/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from "./factories";
2
+ //# sourceMappingURL=package.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../src/package.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC"}
@@ -0,0 +1,4 @@
1
+ export type Brand<T, B extends string> = T & {
2
+ __brand: B;
3
+ };
4
+ //# sourceMappingURL=brand-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brand-types.d.ts","sourceRoot":"","sources":["../../../src/utils/brand-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,IAAI,CAAC,GAAG;IAAE,OAAO,EAAE,CAAC,CAAA;CAAE,CAAC"}
@@ -0,0 +1,12 @@
1
+ type EnvField<T> = {
2
+ default?: T;
3
+ required?: boolean;
4
+ parse?: (value: string) => T;
5
+ };
6
+ type EnvSchema = Record<string, EnvField<unknown>>;
7
+ type InferEnv<S extends EnvSchema> = {
8
+ [K in keyof S]: S[K] extends EnvField<infer T> ? T : never;
9
+ };
10
+ export declare function createEnv<S extends EnvSchema>(schema: S, source?: Record<string, string | undefined>): InferEnv<S>;
11
+ export {};
12
+ //# sourceMappingURL=create-env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-env.d.ts","sourceRoot":"","sources":["../../../src/utils/create-env.ts"],"names":[],"mappings":"AAAA,KAAK,QAAQ,CAAC,CAAC,IAAI;IACjB,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,CAAC;CAC9B,CAAC;AAEF,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AAEnD,KAAK,QAAQ,CAAC,CAAC,SAAS,SAAS,IAAI;KAClC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK;CAC3D,CAAC;AAEF,wBAAgB,SAAS,CAAC,CAAC,SAAS,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAkBtH"}
package/package.json ADDED
@@ -0,0 +1,48 @@
1
+ {
2
+ "name": "@revvue/embed",
3
+ "version": "0.0.0-beta.1",
4
+ "private": false,
5
+ "type": "module",
6
+ "publishConfig": {
7
+ "registry": "https://registry.npmjs.org",
8
+ "access": "public"
9
+ },
10
+ "main": "./dist/package/package.cjs",
11
+ "module": "./dist/package/package.mjs",
12
+ "types": "./dist/package/types/package.d.ts",
13
+ "files": [
14
+ "dist"
15
+ ],
16
+ "exports": {
17
+ ".": {
18
+ "types": "./dist/package/types/package.d.ts",
19
+ "import": "./dist/package/package.mjs",
20
+ "require": "./dist/package/package.cjs"
21
+ },
22
+ "./browser": "./dist/browser/embed.js"
23
+ },
24
+ "scripts": {
25
+ "build": "pnpm build:browser && pnpm build:package",
26
+ "build:browser": "vite build --config vite.config.browser.ts && CSS_OUT_DIR=dist/browser vite build --config vite.config.css.ts",
27
+ "build:package": "vite build --config vite.config.package.ts && CSS_OUT_DIR=dist/package vite build --config vite.config.css.ts",
28
+ "dev": "pnpm dev:js & pnpm dev:css",
29
+ "dev:js": "vite build --config vite.config.browser.ts --watch",
30
+ "dev:css": "CSS_OUT_DIR=dist/browser vite build --config vite.config.css.ts --watch",
31
+ "test": "vitest run",
32
+ "test:watch": "vitest",
33
+ "test:coverage": "vitest run --coverage"
34
+ },
35
+ "devDependencies": {
36
+ "@repo/typescript-config": "workspace:*",
37
+ "@testing-library/dom": "^10.4.0",
38
+ "@testing-library/jest-dom": "^6.6.3",
39
+ "@vitest/coverage-v8": "^4.1.5",
40
+ "autoprefixer": "^10.4.0",
41
+ "cssnano": "^7.0.0",
42
+ "jsdom": "^26.1.0",
43
+ "postcss": "^8.5.0",
44
+ "vite": "^8.0.10",
45
+ "vite-plugin-dts": "^4.5.4",
46
+ "vitest": "^4.1.5"
47
+ }
48
+ }