@linktr.ee/linkapp 0.0.48 → 0.0.49

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 (203) hide show
  1. package/README.md +1 -1
  2. package/dev-server/components/form/array-field.tsx +115 -0
  3. package/dev-server/components/form/file-field.tsx +48 -0
  4. package/dev-server/components/form/form-element.tsx +304 -0
  5. package/dev-server/components/form/link-behavior-field.tsx +68 -0
  6. package/dev-server/components/form/location-field.tsx +60 -0
  7. package/dev-server/components/settings-preview.tsx +138 -302
  8. package/dev-server/components/ui/checkbox.tsx +29 -0
  9. package/dev-server/components/ui/dialog.tsx +2 -10
  10. package/dev-server/components/ui/field.tsx +24 -49
  11. package/dev-server/components/ui/input.tsx +20 -21
  12. package/dev-server/components/ui/label.tsx +4 -4
  13. package/dev-server/components/ui/radio-group.tsx +37 -0
  14. package/dev-server/components/ui/select.tsx +153 -0
  15. package/dev-server/components/ui/switch.tsx +31 -0
  16. package/dev-server/components/ui/tabs.tsx +1 -1
  17. package/dev-server/components/ui/textarea.tsx +18 -19
  18. package/dev-server/env.d.ts +4 -1
  19. package/dev-server/expanded/main.tsx +20 -22
  20. package/dev-server/expanded.html +0 -1
  21. package/dev-server/featured/main.tsx +29 -36
  22. package/dev-server/featured-carousel.html +0 -1
  23. package/dev-server/featured.html +0 -1
  24. package/dev-server/index.html +1 -7
  25. package/dev-server/lib/utils.ts +3 -3
  26. package/dev-server/package.json +3 -3
  27. package/dev-server/postcss/tailwind-source-fallback.js +2 -7
  28. package/dev-server/postcss.config.mjs +2 -2
  29. package/dev-server/preview/Preview.tsx +310 -350
  30. package/dev-server/preview/main.tsx +8 -8
  31. package/dev-server/preview/preview.css +0 -1
  32. package/dev-server/public/site.webmanifest +1 -1
  33. package/dev-server/rsbuild.config.ts +1 -1
  34. package/dev-server/shared/dev-parent-simulator.ts +219 -0
  35. package/dev-server/shared/theme-presets.ts +71 -75
  36. package/dev-server/shared/theme-utils.ts +11 -11
  37. package/dist/cli.js +18 -12
  38. package/dist/cli.js.map +1 -1
  39. package/dist/commands/add.d.ts.map +1 -1
  40. package/dist/commands/add.js +27 -42
  41. package/dist/commands/add.js.map +1 -1
  42. package/dist/commands/build.d.ts.map +1 -1
  43. package/dist/commands/build.js +26 -16
  44. package/dist/commands/build.js.map +1 -1
  45. package/dist/commands/deploy.d.ts +1 -11
  46. package/dist/commands/deploy.d.ts.map +1 -1
  47. package/dist/commands/deploy.js +3 -13
  48. package/dist/commands/deploy.js.map +1 -1
  49. package/dist/commands/dev.d.ts.map +1 -1
  50. package/dist/commands/dev.js +132 -388
  51. package/dist/commands/dev.js.map +1 -1
  52. package/dist/commands/login.d.ts.map +1 -1
  53. package/dist/commands/login.js +17 -29
  54. package/dist/commands/login.js.map +1 -1
  55. package/dist/commands/logout.d.ts.map +1 -1
  56. package/dist/commands/logout.js +6 -11
  57. package/dist/commands/logout.js.map +1 -1
  58. package/dist/commands/rollback.d.ts +10 -0
  59. package/dist/commands/rollback.d.ts.map +1 -0
  60. package/dist/commands/rollback.js +148 -0
  61. package/dist/commands/rollback.js.map +1 -0
  62. package/dist/commands/status.d.ts +8 -0
  63. package/dist/commands/status.d.ts.map +1 -0
  64. package/dist/commands/status.js +96 -0
  65. package/dist/commands/status.js.map +1 -0
  66. package/dist/commands/test-url-match-rules.d.ts.map +1 -1
  67. package/dist/commands/test-url-match-rules.js +20 -26
  68. package/dist/commands/test-url-match-rules.js.map +1 -1
  69. package/dist/lib/auth/device-flow.d.ts +1 -1
  70. package/dist/lib/auth/device-flow.d.ts.map +1 -1
  71. package/dist/lib/auth/device-flow.js +3 -3
  72. package/dist/lib/auth/device-flow.js.map +1 -1
  73. package/dist/lib/auth/token-storage.d.ts.map +1 -1
  74. package/dist/lib/auth/token-storage.js +14 -37
  75. package/dist/lib/auth/token-storage.js.map +1 -1
  76. package/dist/lib/build/detect-layouts.d.ts.map +1 -1
  77. package/dist/lib/build/detect-layouts.js +27 -13
  78. package/dist/lib/build/detect-layouts.js.map +1 -1
  79. package/dist/lib/config/load-config.d.ts.map +1 -1
  80. package/dist/lib/config/load-config.js +0 -2
  81. package/dist/lib/config/load-config.js.map +1 -1
  82. package/dist/lib/deploy/deploy-output.d.ts +2 -1
  83. package/dist/lib/deploy/deploy-output.d.ts.map +1 -1
  84. package/dist/lib/deploy/deploy-output.js +9 -1
  85. package/dist/lib/deploy/deploy-output.js.map +1 -1
  86. package/dist/lib/deploy/deploy-phases.d.ts +2 -0
  87. package/dist/lib/deploy/deploy-phases.d.ts.map +1 -1
  88. package/dist/lib/deploy/deploy-phases.js +9 -23
  89. package/dist/lib/deploy/deploy-phases.js.map +1 -1
  90. package/dist/lib/deploy/deploy-utils.d.ts +15 -7
  91. package/dist/lib/deploy/deploy-utils.d.ts.map +1 -1
  92. package/dist/lib/deploy/deploy-utils.js +49 -36
  93. package/dist/lib/deploy/deploy-utils.js.map +1 -1
  94. package/dist/lib/deploy/generate-manifest-files.d.ts.map +1 -1
  95. package/dist/lib/deploy/generate-manifest-files.js +13 -39
  96. package/dist/lib/deploy/generate-manifest-files.js.map +1 -1
  97. package/dist/lib/deploy/pack-project.d.ts.map +1 -1
  98. package/dist/lib/deploy/pack-project.js +34 -20
  99. package/dist/lib/deploy/pack-project.js.map +1 -1
  100. package/dist/lib/deploy/slot-manager.d.ts +54 -0
  101. package/dist/lib/deploy/slot-manager.d.ts.map +1 -0
  102. package/dist/lib/deploy/slot-manager.js +72 -0
  103. package/dist/lib/deploy/slot-manager.js.map +1 -0
  104. package/dist/lib/deploy/test-url-match-rules.d.ts +10 -2
  105. package/dist/lib/deploy/test-url-match-rules.d.ts.map +1 -1
  106. package/dist/lib/deploy/test-url-match-rules.js +1 -1
  107. package/dist/lib/deploy/test-url-match-rules.js.map +1 -1
  108. package/dist/lib/deploy/upload.d.ts +1 -0
  109. package/dist/lib/deploy/upload.d.ts.map +1 -1
  110. package/dist/lib/deploy/upload.js +15 -24
  111. package/dist/lib/deploy/upload.js.map +1 -1
  112. package/dist/lib/deploy/validation.d.ts.map +1 -1
  113. package/dist/lib/deploy/validation.js +43 -48
  114. package/dist/lib/deploy/validation.js.map +1 -1
  115. package/dist/lib/rsbuild/config-factory.d.ts.map +1 -1
  116. package/dist/lib/rsbuild/config-factory.js +10 -17
  117. package/dist/lib/rsbuild/config-factory.js.map +1 -1
  118. package/dist/lib/rsbuild/plugins/asset-versioning.d.ts.map +1 -1
  119. package/dist/lib/rsbuild/plugins/asset-versioning.js +4 -14
  120. package/dist/lib/rsbuild/plugins/asset-versioning.js.map +1 -1
  121. package/dist/lib/rsbuild/plugins/brotli-compression.d.ts.map +1 -1
  122. package/dist/lib/rsbuild/plugins/brotli-compression.js +4 -4
  123. package/dist/lib/rsbuild/plugins/brotli-compression.js.map +1 -1
  124. package/dist/lib/rsbuild/plugins/copy-public.d.ts.map +1 -1
  125. package/dist/lib/rsbuild/plugins/copy-public.js.map +1 -1
  126. package/dist/lib/rsbuild/postcss/tailwind-source-fallback.d.ts.map +1 -1
  127. package/dist/lib/rsbuild/postcss/tailwind-source-fallback.js +1 -3
  128. package/dist/lib/rsbuild/postcss/tailwind-source-fallback.js.map +1 -1
  129. package/dist/lib/utils/console.d.ts +8 -0
  130. package/dist/lib/utils/console.d.ts.map +1 -0
  131. package/dist/lib/utils/console.js +10 -0
  132. package/dist/lib/utils/console.js.map +1 -0
  133. package/dist/lib/utils/filesystem.d.ts +9 -0
  134. package/dist/lib/utils/filesystem.d.ts.map +1 -0
  135. package/dist/lib/utils/filesystem.js +30 -0
  136. package/dist/lib/utils/filesystem.js.map +1 -0
  137. package/dist/lib/utils/formatters.d.ts +8 -0
  138. package/dist/lib/utils/formatters.d.ts.map +1 -0
  139. package/dist/lib/utils/formatters.js +22 -0
  140. package/dist/lib/utils/formatters.js.map +1 -0
  141. package/dist/lib/utils/index.d.ts +7 -0
  142. package/dist/lib/utils/index.d.ts.map +1 -0
  143. package/dist/lib/utils/index.js +7 -0
  144. package/dist/lib/utils/index.js.map +1 -0
  145. package/dist/lib/utils/setup-runtime.d.ts.map +1 -1
  146. package/dist/lib/utils/setup-runtime.js +22 -63
  147. package/dist/lib/utils/setup-runtime.js.map +1 -1
  148. package/dist/schema/config.schema.d.ts +9 -48
  149. package/dist/schema/config.schema.d.ts.map +1 -1
  150. package/dist/schema/config.schema.js +119 -120
  151. package/dist/schema/config.schema.js.map +1 -1
  152. package/dist/sdk/hooks/mocks.d.ts +9 -0
  153. package/dist/sdk/hooks/mocks.d.ts.map +1 -0
  154. package/dist/sdk/hooks/mocks.js +17 -0
  155. package/dist/sdk/hooks/mocks.js.map +1 -0
  156. package/dist/sdk/hooks/use-audience-manager.d.ts +44 -0
  157. package/dist/sdk/hooks/use-audience-manager.d.ts.map +1 -0
  158. package/dist/sdk/hooks/use-audience-manager.js +109 -0
  159. package/dist/sdk/hooks/use-audience-manager.js.map +1 -0
  160. package/dist/sdk/hooks/use-ip.d.ts +45 -0
  161. package/dist/sdk/hooks/use-ip.d.ts.map +1 -0
  162. package/dist/sdk/hooks/use-ip.js +46 -0
  163. package/dist/sdk/hooks/use-ip.js.map +1 -0
  164. package/dist/sdk/hooks/use-sdk-request.d.ts +46 -0
  165. package/dist/sdk/hooks/use-sdk-request.d.ts.map +1 -0
  166. package/dist/sdk/hooks/use-sdk-request.js +65 -0
  167. package/dist/sdk/hooks/use-sdk-request.js.map +1 -0
  168. package/dist/sdk/hooks/use-theme.d.ts +45 -0
  169. package/dist/sdk/hooks/use-theme.d.ts.map +1 -0
  170. package/dist/sdk/hooks/use-theme.js +97 -0
  171. package/dist/sdk/hooks/use-theme.js.map +1 -0
  172. package/dist/sdk/hooks/use-visitor.d.ts +41 -0
  173. package/dist/sdk/hooks/use-visitor.d.ts.map +1 -0
  174. package/dist/sdk/hooks/use-visitor.js +42 -0
  175. package/dist/sdk/hooks/use-visitor.js.map +1 -0
  176. package/dist/sdk/hooks/validation.d.ts +8 -0
  177. package/dist/sdk/hooks/validation.d.ts.map +1 -0
  178. package/dist/sdk/hooks/validation.js +13 -0
  179. package/dist/sdk/hooks/validation.js.map +1 -0
  180. package/dist/sdk/index.d.ts +17 -5
  181. package/dist/sdk/index.d.ts.map +1 -1
  182. package/dist/sdk/index.js +16 -5
  183. package/dist/sdk/index.js.map +1 -1
  184. package/dist/sdk/message-bus.d.ts +59 -0
  185. package/dist/sdk/message-bus.d.ts.map +1 -0
  186. package/dist/sdk/message-bus.js +152 -0
  187. package/dist/sdk/message-bus.js.map +1 -0
  188. package/dist/sdk/messages.d.ts +121 -0
  189. package/dist/sdk/messages.d.ts.map +1 -0
  190. package/dist/sdk/messages.js +9 -0
  191. package/dist/sdk/messages.js.map +1 -0
  192. package/dist/sdk/send-message.d.ts +1 -1
  193. package/dist/sdk/send-message.js +18 -18
  194. package/dist/sdk/send-message.js.map +1 -1
  195. package/dist/sdk/use-expand-link-app.d.ts +3 -3
  196. package/dist/sdk/use-expand-link-app.d.ts.map +1 -1
  197. package/dist/sdk/use-expand-link-app.js +9 -5
  198. package/dist/sdk/use-expand-link-app.js.map +1 -1
  199. package/dist/types.d.ts +235 -55
  200. package/dist/types.d.ts.map +1 -1
  201. package/dist/types.js +8 -3
  202. package/dist/types.js.map +1 -1
  203. package/package.json +3 -9
package/dist/types.d.ts CHANGED
@@ -2,16 +2,58 @@
2
2
  * Type definitions for LinkApp
3
3
  * Note: Uses snake_case for API-facing types to match API requirements
4
4
  */
5
- export type { PreviewProps, LinkAppTheme, Viewport, Position, FeaturedChinPosition, SheetBehavior, FeaturedHeadClickBehavior, LinkAppConfig, } from "./schema/config.schema.js";
6
- import type { PreviewProps } from "./schema/config.schema.js";
7
- export type Environment = "production" | "qa";
5
+ export type { PreviewProps, LinkAppTheme, Viewport, Position, LinkAppConfig, } from './schema/config.schema.js';
6
+ export type { VisitorData, IPData, SubscribeResult, RequestId, LinkAppToParentMessage, ParentToLinkAppMessage, } from './sdk/messages.js';
7
+ import type { PreviewProps } from './schema/config.schema.js';
8
+ export type Environment = 'production' | 'qa';
9
+ /**
10
+ * Environment configuration provided by parent iframe
11
+ */
12
+ export interface LinkAppEnvironment {
13
+ GRAPH_ENDPOINT?: string | undefined;
14
+ RECAPTCHA_SITE_KEY?: string | undefined;
15
+ GRAPHQL_CLIENT_NAME?: string | undefined;
16
+ GRAPHQL_CLIENT_VERSION?: string | undefined;
17
+ COUNTRY_CODE?: string | undefined;
18
+ PROFILE?: string | undefined;
19
+ }
20
+ /**
21
+ * Link parameters passed from parent to LinkApp
22
+ */
23
+ export type LinkParams = Record<string, unknown>;
24
+ /**
25
+ * Theme configuration with CSS variables for iframe communication
26
+ */
27
+ export interface ExtensionTheme {
28
+ cssVariables: Record<string, string>;
29
+ font?: {
30
+ fontFamily: string;
31
+ fontStyle?: string | undefined;
32
+ cssUrl?: string | undefined;
33
+ } | undefined;
34
+ }
35
+ /**
36
+ * Data passed from parent iframe to LinkApp
37
+ * Used in production mode for iframe communication
38
+ */
39
+ export interface ExtensionData extends Record<string, unknown> {
40
+ __linkUrl?: string | undefined;
41
+ __thumbnail?: string | undefined;
42
+ __linkParams?: LinkParams | null | undefined;
43
+ __environment?: LinkAppEnvironment | undefined;
44
+ __layout?: 'classic' | 'featured' | undefined;
45
+ groupLayoutOption?: 'stack' | 'grid' | 'featured' | 'carousel' | 'featuredSubscribe' | 'showcase' | undefined;
46
+ __theme?: ExtensionTheme | undefined;
47
+ displayType?: 'none' | 'accordion' | 'dialog' | undefined;
48
+ }
8
49
  /**
9
50
  * Props available to layout components
10
51
  * Extend with custom settings from your config
11
52
  */
12
53
  export type AppProps<TSettings = Record<string, unknown>> = PreviewProps & TSettings;
13
- export type LinkTypeCategoryV2 = "tours-and-shows" | "social-media" | "text" | "audio" | "document" | "video" | "promotions" | "communities" | "digital-products" | "physical-products" | "fundraising" | "details" | "forms" | "scheduling";
54
+ export type LinkTypeCategoryV2 = 'tours-and-shows' | 'social-media' | 'text' | 'audio' | 'document' | 'video' | 'promotions' | 'communities' | 'digital-products' | 'physical-products' | 'fundraising' | 'details' | 'forms' | 'scheduling';
14
55
  export interface LinkAppManifest {
56
+ id?: string;
15
57
  name: string;
16
58
  tagline: string;
17
59
  description: string[];
@@ -23,7 +65,7 @@ export interface LinkAppManifest {
23
65
  documentation?: string;
24
66
  website?: string;
25
67
  };
26
- category: "grow" | "sell" | "share" | "learn";
68
+ category: 'grow' | 'sell' | 'share' | 'learn';
27
69
  categoryV2?: LinkTypeCategoryV2;
28
70
  categoryV2Order?: number;
29
71
  search_terms: string[];
@@ -40,7 +82,10 @@ export declare enum SettingsIcon {
40
82
  file = "file",
41
83
  settings = "settings",
42
84
  text_and_media = "text_and_media",
43
- question = "question"
85
+ text = "text",
86
+ coupon = "coupon",
87
+ 'question-mark' = "question-mark",
88
+ reviews = "reviews"
44
89
  }
45
90
  export declare enum SettingsElementInput {
46
91
  button = "button",
@@ -50,23 +95,25 @@ export declare enum SettingsElementInput {
50
95
  radio = "radio",
51
96
  checkbox = "checkbox",
52
97
  select = "select",
53
- password = "password",
54
98
  switch = "switch",
55
99
  linkBehavior = "linkBehavior",
56
100
  file = "file",
57
101
  url = "url",
102
+ email = "email",
58
103
  integration = "integration",
59
- embedOption = "embedOption",
60
- array = "array"
104
+ array = "array",
105
+ location = "location"
61
106
  }
62
107
  export declare enum IntegrationCapability {
63
- MANAGE_EMAIL_SUBSCRIBERS = "MANAGE_EMAIL_SUBSCRIBERS"
108
+ MANAGE_EMAIL_SUBSCRIBERS = "MANAGE_EMAIL_SUBSCRIBERS",
109
+ MANAGE_CALENDAR_BOOKINGS = "MANAGE_CALENDAR_BOOKINGS",
110
+ SEARCH = "SEARCH"
64
111
  }
65
112
  export declare enum InteractionEvent {
66
113
  click = "click"
67
114
  }
68
115
  export declare enum ActionType {
69
- "update-link" = "update-link"
116
+ 'update-link' = "update-link"
70
117
  }
71
118
  export interface SettingsElementAction {
72
119
  on: InteractionEvent;
@@ -75,18 +122,106 @@ export interface SettingsElementAction {
75
122
  link_type: string;
76
123
  };
77
124
  }
125
+ /**
126
+ * Validation for text-based inputs (text, textarea, url)
127
+ *
128
+ * @property required - Field must have a value
129
+ * @property pattern - Regex pattern the value must match
130
+ * @property minLength - Minimum character length
131
+ * @property maxLength - Maximum character length. In the Linktree editor,
132
+ * this enables a real-time character counter showing "X/Y characters"
133
+ */
134
+ export interface TextValidation {
135
+ required?: boolean | undefined;
136
+ pattern?: string | undefined;
137
+ minLength?: number | undefined;
138
+ maxLength?: number | undefined;
139
+ }
140
+ /**
141
+ * Validation for number inputs
142
+ *
143
+ * @property required - Field must have a value
144
+ * @property min - Minimum numeric value
145
+ * @property max - Maximum numeric value
146
+ */
147
+ export interface NumberValidation {
148
+ required?: boolean | undefined;
149
+ min?: number | undefined;
150
+ max?: number | undefined;
151
+ }
152
+ /**
153
+ * Validation for array inputs (repeatable field groups)
154
+ *
155
+ * @property required - Array must have at least one item
156
+ * @property minItems - Minimum number of items (preferred over minSize)
157
+ * @property maxItems - Maximum number of items (preferred over maxSize)
158
+ * @property minSize - @deprecated Use minItems instead
159
+ * @property maxSize - @deprecated Use maxItems instead
160
+ */
161
+ export interface ArrayValidation {
162
+ required?: boolean | undefined;
163
+ /** Minimum number of items required */
164
+ minItems?: number | undefined;
165
+ /** Maximum number of items allowed */
166
+ maxItems?: number | undefined;
167
+ /**
168
+ * @deprecated Use minItems instead for clearer naming
169
+ */
170
+ minSize?: number | undefined;
171
+ /**
172
+ * @deprecated Use maxItems instead for clearer naming
173
+ */
174
+ maxSize?: number | undefined;
175
+ }
176
+ /**
177
+ * Validation for file upload inputs
178
+ *
179
+ * @property required - A file must be selected
180
+ * @property maxFileSize - Maximum file size in bytes (e.g., 5242880 = 5MB)
181
+ */
182
+ export interface FileValidation {
183
+ required?: boolean | undefined;
184
+ /** Maximum file size in bytes */
185
+ maxFileSize?: number | undefined;
186
+ }
187
+ /**
188
+ * Validation for location inputs (Google Places)
189
+ *
190
+ * @property required - A location must be selected
191
+ */
192
+ export interface LocationValidation {
193
+ required?: boolean | undefined;
194
+ }
195
+ /**
196
+ * Union type for all validation options
197
+ * Maintained for backward compatibility - all properties are optional
198
+ *
199
+ * For new code, prefer using the specific validation interfaces
200
+ * (TextValidation, NumberValidation, ArrayValidation, etc.) based on inputType
201
+ */
78
202
  export interface SettingsElementValidation {
79
- required?: boolean;
80
- pattern?: string;
81
- minLength?: number;
82
- maxLength?: number;
83
- min?: number;
84
- max?: number;
85
- maxSize?: number;
203
+ required?: boolean | undefined;
204
+ pattern?: string | undefined;
205
+ minLength?: number | undefined;
206
+ maxLength?: number | undefined;
207
+ min?: number | undefined;
208
+ max?: number | undefined;
209
+ /** @deprecated Use minItems instead for array inputs */
210
+ minSize?: number | undefined;
211
+ /** @deprecated Use maxItems instead for array inputs */
212
+ maxSize?: number | undefined;
213
+ /** Minimum number of items for array inputs */
214
+ minItems?: number | undefined;
215
+ /** Maximum number of items for array inputs */
216
+ maxItems?: number | undefined;
217
+ /** Maximum file size in bytes for file inputs */
218
+ maxFileSize?: number | undefined;
86
219
  }
87
220
  export interface SettingsOverview {
88
221
  title?: string;
89
222
  description: string;
223
+ /** URL to support documentation */
224
+ supportLink?: string | undefined;
90
225
  }
91
226
  export interface SetupInstructions {
92
227
  title?: string;
@@ -100,10 +235,51 @@ export interface SettingsElementLinkBehaviorLabel {
100
235
  linkOffLabel: string;
101
236
  embedLabel: string;
102
237
  }
238
+ /**
239
+ * Conditional visibility based on another field's value
240
+ * Used to show/hide elements dynamically
241
+ *
242
+ * @example
243
+ * ```ts
244
+ * conditional: {
245
+ * fieldId: "displayMode",
246
+ * values: ["business_chat", "catalog"]
247
+ * }
248
+ * ```
249
+ */
250
+ export interface Conditional {
251
+ /** ID of the field this depends on */
252
+ fieldId: string;
253
+ /** Values that trigger visibility (element shown when field matches any value) */
254
+ values: (string | boolean)[];
255
+ }
256
+ /**
257
+ * @deprecated Use `conditional` instead for simpler syntax
258
+ *
259
+ * Legacy conditional display format with operator support.
260
+ * New code should use `conditional` which supports multiple values.
261
+ */
103
262
  export interface ConditionalDisplay {
104
263
  dependsOn: string;
105
264
  value: string | boolean;
106
- operator?: "equals" | "notEquals" | "contains";
265
+ operator?: 'equals' | 'notEquals' | 'contains';
266
+ }
267
+ /**
268
+ * Enhanced radio option with title and description
269
+ * For complex radio groups that need more than just label/value
270
+ *
271
+ * @example
272
+ * ```ts
273
+ * radio_elements: [
274
+ * { id: "option1", title: "First Option", description: "Description here" },
275
+ * { id: "option2", title: "Second Option" }
276
+ * ]
277
+ * ```
278
+ */
279
+ export interface RadioElement {
280
+ id: string;
281
+ title: string;
282
+ description?: string | undefined;
107
283
  }
108
284
  export interface ArrayOptions {
109
285
  add_item_button_text?: string;
@@ -114,6 +290,22 @@ export interface ArrayOptions {
114
290
  min?: number;
115
291
  max?: number;
116
292
  }
293
+ /**
294
+ * Location/Place value from Google Places API
295
+ */
296
+ export interface PlaceValue {
297
+ placeId: string;
298
+ name: string;
299
+ address: string;
300
+ lat: number;
301
+ lng: number;
302
+ photos?: string[] | undefined;
303
+ rating?: number | undefined;
304
+ userRatingsTotal?: number | undefined;
305
+ types?: string[] | undefined;
306
+ website?: string | undefined;
307
+ phoneNumber?: string | undefined;
308
+ }
117
309
  export interface LinkAppSettings {
118
310
  title: string;
119
311
  icon?: SettingsIcon;
@@ -125,21 +317,19 @@ export interface LinkAppSettings {
125
317
  elements: SettingsElement[];
126
318
  has_settings?: boolean;
127
319
  supports_featured_layout?: boolean;
128
- featured_chin_position?: "minimal" | "above" | "below" | "overlayBelow" | "overlayAbove";
129
- featured_head_allow_unlocked_aspect_ratio?: boolean;
130
- sheet_behavior?: "none" | "expandGeneric" | "expandVideo" | "default";
131
- featured_head_click_behavior?: "linkOff" | "expand" | "custom" | "inlineVideoPlayer" | "default";
132
320
  }
133
321
  export interface SettingsElement {
134
322
  id: string;
135
323
  inputType: SettingsElementInput;
136
324
  title?: string;
137
325
  description?: string;
138
- defaultValue?: string | string[] | boolean;
326
+ defaultValue?: string | string[] | boolean | PlaceValue;
139
327
  label?: string;
140
328
  placeholder?: string;
141
329
  validation?: SettingsElementValidation;
142
330
  options?: SettingsElementOption[];
331
+ /** Enhanced radio options with title and description (alternative to options) */
332
+ radio_elements?: RadioElement[];
143
333
  linkBehaviorLabels?: SettingsElementLinkBehaviorLabel;
144
334
  accept?: string[];
145
335
  multiple?: boolean;
@@ -148,6 +338,9 @@ export interface SettingsElement {
148
338
  vendor?: string;
149
339
  array_options?: ArrayOptions;
150
340
  array_elements?: SettingsElement[];
341
+ /** Conditional visibility based on another field (preferred) */
342
+ conditional?: Conditional;
343
+ /** @deprecated Use conditional instead */
151
344
  conditionalDisplay?: ConditionalDisplay;
152
345
  }
153
346
  export interface UrlMatchRules {
@@ -168,6 +361,14 @@ export interface AppConfig {
168
361
  link_types_url: string;
169
362
  logout_redirect_url: string;
170
363
  }
364
+ /**
365
+ * Version info for timestamp-based deployments
366
+ */
367
+ export interface VersionInfo {
368
+ version: string;
369
+ deployedAt: string;
370
+ buildHash?: string | undefined;
371
+ }
171
372
  export interface DeployResponse {
172
373
  linkType: {
173
374
  linkTypeId: string;
@@ -177,6 +378,8 @@ export interface DeployResponse {
177
378
  build?: {
178
379
  id: string;
179
380
  };
381
+ /** Active version timestamp (e.g., "1732654321") */
382
+ activeVersion?: string | undefined;
180
383
  }
181
384
  export interface Template {
182
385
  name: string;
@@ -194,36 +397,13 @@ export interface ComponentRegistry {
194
397
  }
195
398
  /**
196
399
  * PostMessage communication between LinkApp iframe and parent
400
+ *
401
+ * Note: Full message types are now defined in ./sdk/messages.ts
402
+ * These are re-exported above for backward compatibility.
403
+ *
404
+ * Legacy alias for backward compatibility:
197
405
  */
198
- /**
199
- * Message sent to open a popup/modal in the parent window
200
- * Parent identifies the LinkApp from event.source
201
- */
202
- export interface ExpandLinkAppMessage {
203
- source: "linkapp";
204
- type: "EXPAND_LINK_APP";
205
- payload: {
206
- data?: Record<string, unknown>;
207
- };
208
- }
209
- /**
210
- * Union of all messages sent FROM LinkApp iframe TO parent window
211
- * Extensible for future message types (navigation, analytics, etc.)
212
- */
213
- export type LinkAppMessage = ExpandLinkAppMessage;
214
- /**
215
- * Message sent from parent window TO LinkApp iframe to update theme
216
- * Uses CSS-native approach inspired by Figma's iframe theming
217
- */
218
- export interface ThemeUpdateMessage {
219
- type: "THEME_UPDATE";
220
- payload: {
221
- name: string;
222
- variables: Record<string, string>;
223
- };
224
- }
225
- /**
226
- * Union of all messages sent FROM parent window TO LinkApp iframe
227
- */
228
- export type ParentToLinkAppMessage = ThemeUpdateMessage;
406
+ export type { ExpandLinkAppMessage } from './sdk/messages.js';
407
+ /** @deprecated Use LinkAppToParentMessage instead */
408
+ export type LinkAppMessage = import('./sdk/messages.js').ExpandLinkAppMessage;
229
409
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -7,7 +7,10 @@ export var SettingsIcon;
7
7
  SettingsIcon["file"] = "file";
8
8
  SettingsIcon["settings"] = "settings";
9
9
  SettingsIcon["text_and_media"] = "text_and_media";
10
- SettingsIcon["question"] = "question";
10
+ SettingsIcon["text"] = "text";
11
+ SettingsIcon["coupon"] = "coupon";
12
+ SettingsIcon["question-mark"] = "question-mark";
13
+ SettingsIcon["reviews"] = "reviews";
11
14
  })(SettingsIcon || (SettingsIcon = {}));
12
15
  export var SettingsElementInput;
13
16
  (function (SettingsElementInput) {
@@ -18,18 +21,20 @@ export var SettingsElementInput;
18
21
  SettingsElementInput["radio"] = "radio";
19
22
  SettingsElementInput["checkbox"] = "checkbox";
20
23
  SettingsElementInput["select"] = "select";
21
- SettingsElementInput["password"] = "password";
22
24
  SettingsElementInput["switch"] = "switch";
23
25
  SettingsElementInput["linkBehavior"] = "linkBehavior";
24
26
  SettingsElementInput["file"] = "file";
25
27
  SettingsElementInput["url"] = "url";
28
+ SettingsElementInput["email"] = "email";
26
29
  SettingsElementInput["integration"] = "integration";
27
- SettingsElementInput["embedOption"] = "embedOption";
28
30
  SettingsElementInput["array"] = "array";
31
+ SettingsElementInput["location"] = "location";
29
32
  })(SettingsElementInput || (SettingsElementInput = {}));
30
33
  export var IntegrationCapability;
31
34
  (function (IntegrationCapability) {
32
35
  IntegrationCapability["MANAGE_EMAIL_SUBSCRIBERS"] = "MANAGE_EMAIL_SUBSCRIBERS";
36
+ IntegrationCapability["MANAGE_CALENDAR_BOOKINGS"] = "MANAGE_CALENDAR_BOOKINGS";
37
+ IntegrationCapability["SEARCH"] = "SEARCH";
33
38
  })(IntegrationCapability || (IntegrationCapability = {}));
34
39
  export var InteractionEvent;
35
40
  (function (InteractionEvent) {
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAmEH,MAAM,CAAN,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,qCAAqB,CAAA;IACrB,iDAAiC,CAAA;IACjC,qCAAqB,CAAA;AACvB,CAAC,EALW,YAAY,KAAZ,YAAY,QAKvB;AAED,MAAM,CAAN,IAAY,oBAgBX;AAhBD,WAAY,oBAAoB;IAC9B,yCAAiB,CAAA;IACjB,qCAAa,CAAA;IACb,6CAAqB,CAAA;IACrB,yCAAiB,CAAA;IACjB,uCAAe,CAAA;IACf,6CAAqB,CAAA;IACrB,yCAAiB,CAAA;IACjB,6CAAqB,CAAA;IACrB,yCAAiB,CAAA;IACjB,qDAA6B,CAAA;IAC7B,qCAAa,CAAA;IACb,mCAAW,CAAA;IACX,mDAA2B,CAAA;IAC3B,mDAA2B,CAAA;IAC3B,uCAAe,CAAA;AACjB,CAAC,EAhBW,oBAAoB,KAApB,oBAAoB,QAgB/B;AAED,MAAM,CAAN,IAAY,qBAEX;AAFD,WAAY,qBAAqB;IAC/B,8EAAqD,CAAA;AACvD,CAAC,EAFW,qBAAqB,KAArB,qBAAqB,QAEhC;AAED,MAAM,CAAN,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,mCAAe,CAAA;AACjB,CAAC,EAFW,gBAAgB,KAAhB,gBAAgB,QAE3B;AAED,MAAM,CAAN,IAAY,UAEX;AAFD,WAAY,UAAU;IACpB,yCAA6B,CAAA;AAC/B,CAAC,EAFW,UAAU,KAAV,UAAU,QAErB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA4HH,MAAM,CAAN,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,qCAAqB,CAAA;IACrB,iDAAiC,CAAA;IACjC,6BAAa,CAAA;IACb,iCAAiB,CAAA;IACjB,+CAAiC,CAAA;IACjC,mCAAmB,CAAA;AACrB,CAAC,EARW,YAAY,KAAZ,YAAY,QAQvB;AAED,MAAM,CAAN,IAAY,oBAgBX;AAhBD,WAAY,oBAAoB;IAC9B,yCAAiB,CAAA;IACjB,qCAAa,CAAA;IACb,6CAAqB,CAAA;IACrB,yCAAiB,CAAA;IACjB,uCAAe,CAAA;IACf,6CAAqB,CAAA;IACrB,yCAAiB,CAAA;IACjB,yCAAiB,CAAA;IACjB,qDAA6B,CAAA;IAC7B,qCAAa,CAAA;IACb,mCAAW,CAAA;IACX,uCAAe,CAAA;IACf,mDAA2B,CAAA;IAC3B,uCAAe,CAAA;IACf,6CAAqB,CAAA;AACvB,CAAC,EAhBW,oBAAoB,KAApB,oBAAoB,QAgB/B;AAED,MAAM,CAAN,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,8EAAqD,CAAA;IACrD,8EAAqD,CAAA;IACrD,0CAAiB,CAAA;AACnB,CAAC,EAJW,qBAAqB,KAArB,qBAAqB,QAIhC;AAED,MAAM,CAAN,IAAY,gBAEX;AAFD,WAAY,gBAAgB;IAC1B,mCAAe,CAAA;AACjB,CAAC,EAFW,gBAAgB,KAAhB,gBAAgB,QAE3B;AAED,MAAM,CAAN,IAAY,UAEX;AAFD,WAAY,UAAU;IACpB,yCAA6B,CAAA;AAC/B,CAAC,EAFW,UAAU,KAAV,UAAU,QAErB"}
package/package.json CHANGED
@@ -1,19 +1,13 @@
1
1
  {
2
2
  "name": "@linktr.ee/linkapp",
3
- "version": "0.0.48",
3
+ "version": "0.0.49",
4
4
  "description": "Development, build, and deployment tooling for LinkApps",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "linkapp": "bin/cli.js",
8
8
  "create-linktree-link-run": "bin/cli.js"
9
9
  },
10
- "files": [
11
- "dist",
12
- "bin",
13
- "runtime",
14
- "dev-server",
15
- "linkapp-preview"
16
- ],
10
+ "files": ["dist", "bin", "runtime", "dev-server", "linkapp-preview"],
17
11
  "exports": {
18
12
  ".": {
19
13
  "types": "./dist/types.d.ts",
@@ -64,7 +58,7 @@
64
58
  "picocolors": "^1.1.1",
65
59
  "postcss": "^8.5.6",
66
60
  "prop-types": "^15.8.1",
67
- "react": "^19.1.0",
61
+ "react": "^19.2.1",
68
62
  "zod": "^4.1.12"
69
63
  },
70
64
  "devDependencies": {