@osano/osano-cmp-react-native 0.18.3 → 0.18.5

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 (244) hide show
  1. package/lib/commonjs/ConsentManager.js +105 -1
  2. package/lib/commonjs/ConsentManager.js.map +1 -1
  3. package/lib/commonjs/components/Button.js +10 -4
  4. package/lib/commonjs/components/Button.js.map +1 -1
  5. package/lib/commonjs/context.js +1 -0
  6. package/lib/commonjs/context.js.map +1 -1
  7. package/lib/commonjs/flavors/index.js +4 -1
  8. package/lib/commonjs/flavors/index.js.map +1 -1
  9. package/lib/commonjs/flavors/seven.json +11 -0
  10. package/lib/commonjs/index.js +4 -0
  11. package/lib/commonjs/index.js.map +1 -1
  12. package/lib/commonjs/locale/af.json +1 -0
  13. package/lib/commonjs/locale/ar.json +1 -0
  14. package/lib/commonjs/locale/bg.json +1 -0
  15. package/lib/commonjs/locale/ca.json +1 -0
  16. package/lib/commonjs/locale/cs.json +1 -0
  17. package/lib/commonjs/locale/da.json +1 -0
  18. package/lib/commonjs/locale/de-at.json +1 -0
  19. package/lib/commonjs/locale/de.json +1 -0
  20. package/lib/commonjs/locale/el.json +1 -0
  21. package/lib/commonjs/locale/en-au.json +1 -0
  22. package/lib/commonjs/locale/en-ca.json +1 -0
  23. package/lib/commonjs/locale/en-gb.json +1 -0
  24. package/lib/commonjs/locale/en.json +1 -0
  25. package/lib/commonjs/locale/es-mx.json +1 -0
  26. package/lib/commonjs/locale/es.json +1 -0
  27. package/lib/commonjs/locale/et.json +1 -0
  28. package/lib/commonjs/locale/fa.json +1 -0
  29. package/lib/commonjs/locale/fi.json +1 -0
  30. package/lib/commonjs/locale/fr-ca.json +1 -0
  31. package/lib/commonjs/locale/fr.json +1 -0
  32. package/lib/commonjs/locale/gd.json +1 -0
  33. package/lib/commonjs/locale/he.json +1 -0
  34. package/lib/commonjs/locale/hi.json +1 -0
  35. package/lib/commonjs/locale/hr.json +1 -0
  36. package/lib/commonjs/locale/hu.json +1 -0
  37. package/lib/commonjs/locale/hy.json +1 -0
  38. package/lib/commonjs/locale/id.json +1 -0
  39. package/lib/commonjs/locale/is.json +1 -0
  40. package/lib/commonjs/locale/it.json +1 -0
  41. package/lib/commonjs/locale/ja.json +1 -0
  42. package/lib/commonjs/locale/kk.json +1 -0
  43. package/lib/commonjs/locale/ko.json +1 -0
  44. package/lib/commonjs/locale/lt.json +1 -0
  45. package/lib/commonjs/locale/lv.json +1 -0
  46. package/lib/commonjs/locale/mi.json +1 -0
  47. package/lib/commonjs/locale/ms.json +1 -0
  48. package/lib/commonjs/locale/nb.json +1 -0
  49. package/lib/commonjs/locale/nl-be.json +1 -0
  50. package/lib/commonjs/locale/nl.json +1 -0
  51. package/lib/commonjs/locale/nn.json +1 -0
  52. package/lib/commonjs/locale/no.json +1 -0
  53. package/lib/commonjs/locale/pl.json +1 -0
  54. package/lib/commonjs/locale/pt-br.json +1 -0
  55. package/lib/commonjs/locale/pt.json +1 -0
  56. package/lib/commonjs/locale/ro.json +1 -0
  57. package/lib/commonjs/locale/ru.json +1 -0
  58. package/lib/commonjs/locale/sk.json +1 -0
  59. package/lib/commonjs/locale/sl.json +1 -0
  60. package/lib/commonjs/locale/sq.json +1 -0
  61. package/lib/commonjs/locale/sr.json +1 -0
  62. package/lib/commonjs/locale/sv.json +1 -0
  63. package/lib/commonjs/locale/th.json +1 -0
  64. package/lib/commonjs/locale/tl.json +1 -0
  65. package/lib/commonjs/locale/tr.json +1 -0
  66. package/lib/commonjs/locale/uk.json +1 -0
  67. package/lib/commonjs/locale/vi.json +1 -0
  68. package/lib/commonjs/locale/zh-hk.json +1 -0
  69. package/lib/commonjs/locale/zh-tw.json +1 -0
  70. package/lib/commonjs/locale/zh.json +1 -0
  71. package/lib/commonjs/locale/zu.json +1 -0
  72. package/lib/commonjs/services/consent.js +146 -32
  73. package/lib/commonjs/services/consent.js.map +1 -1
  74. package/lib/commonjs/services/gdprMappings.js +115 -0
  75. package/lib/commonjs/services/gdprMappings.js.map +1 -0
  76. package/lib/commonjs/views/Dialog/Message.js +1 -1
  77. package/lib/commonjs/views/Dialog/Message.js.map +1 -1
  78. package/lib/commonjs/views/Dialog/index.js +1 -1
  79. package/lib/commonjs/views/Dialog/index.js.map +1 -1
  80. package/lib/module/ConsentManager.js +105 -1
  81. package/lib/module/ConsentManager.js.map +1 -1
  82. package/lib/module/components/Button.js +10 -4
  83. package/lib/module/components/Button.js.map +1 -1
  84. package/lib/module/context.js +1 -0
  85. package/lib/module/context.js.map +1 -1
  86. package/lib/module/flavors/index.js +4 -1
  87. package/lib/module/flavors/index.js.map +1 -1
  88. package/lib/module/flavors/seven.json +11 -0
  89. package/lib/module/index.js +4 -0
  90. package/lib/module/index.js.map +1 -1
  91. package/lib/module/locale/af.json +1 -0
  92. package/lib/module/locale/ar.json +1 -0
  93. package/lib/module/locale/bg.json +1 -0
  94. package/lib/module/locale/ca.json +1 -0
  95. package/lib/module/locale/cs.json +1 -0
  96. package/lib/module/locale/da.json +1 -0
  97. package/lib/module/locale/de-at.json +1 -0
  98. package/lib/module/locale/de.json +1 -0
  99. package/lib/module/locale/el.json +1 -0
  100. package/lib/module/locale/en-au.json +1 -0
  101. package/lib/module/locale/en-ca.json +1 -0
  102. package/lib/module/locale/en-gb.json +1 -0
  103. package/lib/module/locale/en.json +1 -0
  104. package/lib/module/locale/es-mx.json +1 -0
  105. package/lib/module/locale/es.json +1 -0
  106. package/lib/module/locale/et.json +1 -0
  107. package/lib/module/locale/fa.json +1 -0
  108. package/lib/module/locale/fi.json +1 -0
  109. package/lib/module/locale/fr-ca.json +1 -0
  110. package/lib/module/locale/fr.json +1 -0
  111. package/lib/module/locale/gd.json +1 -0
  112. package/lib/module/locale/he.json +1 -0
  113. package/lib/module/locale/hi.json +1 -0
  114. package/lib/module/locale/hr.json +1 -0
  115. package/lib/module/locale/hu.json +1 -0
  116. package/lib/module/locale/hy.json +1 -0
  117. package/lib/module/locale/id.json +1 -0
  118. package/lib/module/locale/is.json +1 -0
  119. package/lib/module/locale/it.json +1 -0
  120. package/lib/module/locale/ja.json +1 -0
  121. package/lib/module/locale/kk.json +1 -0
  122. package/lib/module/locale/ko.json +1 -0
  123. package/lib/module/locale/lt.json +1 -0
  124. package/lib/module/locale/lv.json +1 -0
  125. package/lib/module/locale/mi.json +1 -0
  126. package/lib/module/locale/ms.json +1 -0
  127. package/lib/module/locale/nb.json +1 -0
  128. package/lib/module/locale/nl-be.json +1 -0
  129. package/lib/module/locale/nl.json +1 -0
  130. package/lib/module/locale/nn.json +1 -0
  131. package/lib/module/locale/no.json +1 -0
  132. package/lib/module/locale/pl.json +1 -0
  133. package/lib/module/locale/pt-br.json +1 -0
  134. package/lib/module/locale/pt.json +1 -0
  135. package/lib/module/locale/ro.json +1 -0
  136. package/lib/module/locale/ru.json +1 -0
  137. package/lib/module/locale/sk.json +1 -0
  138. package/lib/module/locale/sl.json +1 -0
  139. package/lib/module/locale/sq.json +1 -0
  140. package/lib/module/locale/sr.json +1 -0
  141. package/lib/module/locale/sv.json +1 -0
  142. package/lib/module/locale/th.json +1 -0
  143. package/lib/module/locale/tl.json +1 -0
  144. package/lib/module/locale/tr.json +1 -0
  145. package/lib/module/locale/uk.json +1 -0
  146. package/lib/module/locale/vi.json +1 -0
  147. package/lib/module/locale/zh-hk.json +1 -0
  148. package/lib/module/locale/zh-tw.json +1 -0
  149. package/lib/module/locale/zh.json +1 -0
  150. package/lib/module/locale/zu.json +1 -0
  151. package/lib/module/services/consent.js +144 -31
  152. package/lib/module/services/consent.js.map +1 -1
  153. package/lib/module/services/gdprMappings.js +109 -0
  154. package/lib/module/services/gdprMappings.js.map +1 -0
  155. package/lib/module/views/Dialog/Message.js +1 -1
  156. package/lib/module/views/Dialog/Message.js.map +1 -1
  157. package/lib/module/views/Dialog/index.js +1 -1
  158. package/lib/module/views/Dialog/index.js.map +1 -1
  159. package/lib/typescript/src/ConsentManager.d.ts +56 -1
  160. package/lib/typescript/src/ConsentManager.d.ts.map +1 -1
  161. package/lib/typescript/src/components/Button.d.ts.map +1 -1
  162. package/lib/typescript/src/context.d.ts +1 -0
  163. package/lib/typescript/src/context.d.ts.map +1 -1
  164. package/lib/typescript/src/flavors/index.d.ts +2 -1
  165. package/lib/typescript/src/flavors/index.d.ts.map +1 -1
  166. package/lib/typescript/src/index.d.ts.map +1 -1
  167. package/lib/typescript/src/services/consent.d.ts +6 -1
  168. package/lib/typescript/src/services/consent.d.ts.map +1 -1
  169. package/lib/typescript/src/services/gdprMappings.d.ts +32 -0
  170. package/lib/typescript/src/services/gdprMappings.d.ts.map +1 -0
  171. package/lib/typescript/src/views/Dialog/index.d.ts.map +1 -1
  172. package/package.json +7 -4
  173. package/src/ConsentManager.ts +136 -2
  174. package/src/components/Button.tsx +7 -5
  175. package/src/context.ts +2 -0
  176. package/src/flavors/index.ts +3 -0
  177. package/src/flavors/seven.json +11 -0
  178. package/src/index.tsx +10 -0
  179. package/src/locale/af.json +1 -0
  180. package/src/locale/ar.json +1 -0
  181. package/src/locale/bg.json +1 -0
  182. package/src/locale/ca.json +1 -0
  183. package/src/locale/cs.json +1 -0
  184. package/src/locale/da.json +1 -0
  185. package/src/locale/de-at.json +1 -0
  186. package/src/locale/de.json +1 -0
  187. package/src/locale/el.json +1 -0
  188. package/src/locale/en-au.json +1 -0
  189. package/src/locale/en-ca.json +1 -0
  190. package/src/locale/en-gb.json +1 -0
  191. package/src/locale/en.json +1 -0
  192. package/src/locale/es-mx.json +1 -0
  193. package/src/locale/es.json +1 -0
  194. package/src/locale/et.json +1 -0
  195. package/src/locale/fa.json +1 -0
  196. package/src/locale/fi.json +1 -0
  197. package/src/locale/fr-ca.json +1 -0
  198. package/src/locale/fr.json +1 -0
  199. package/src/locale/gd.json +1 -0
  200. package/src/locale/he.json +1 -0
  201. package/src/locale/hi.json +1 -0
  202. package/src/locale/hr.json +1 -0
  203. package/src/locale/hu.json +1 -0
  204. package/src/locale/hy.json +1 -0
  205. package/src/locale/id.json +1 -0
  206. package/src/locale/is.json +1 -0
  207. package/src/locale/it.json +1 -0
  208. package/src/locale/ja.json +1 -0
  209. package/src/locale/kk.json +1 -0
  210. package/src/locale/ko.json +1 -0
  211. package/src/locale/lt.json +1 -0
  212. package/src/locale/lv.json +1 -0
  213. package/src/locale/mi.json +1 -0
  214. package/src/locale/ms.json +1 -0
  215. package/src/locale/nb.json +1 -0
  216. package/src/locale/nl-be.json +1 -0
  217. package/src/locale/nl.json +1 -0
  218. package/src/locale/nn.json +1 -0
  219. package/src/locale/no.json +1 -0
  220. package/src/locale/pl.json +1 -0
  221. package/src/locale/pt-br.json +1 -0
  222. package/src/locale/pt.json +1 -0
  223. package/src/locale/ro.json +1 -0
  224. package/src/locale/ru.json +1 -0
  225. package/src/locale/sk.json +1 -0
  226. package/src/locale/sl.json +1 -0
  227. package/src/locale/sq.json +1 -0
  228. package/src/locale/sr.json +1 -0
  229. package/src/locale/sv.json +1 -0
  230. package/src/locale/th.json +1 -0
  231. package/src/locale/tl.json +1 -0
  232. package/src/locale/tr.json +1 -0
  233. package/src/locale/uk.json +1 -0
  234. package/src/locale/vi.json +1 -0
  235. package/src/locale/zh-hk.json +1 -0
  236. package/src/locale/zh-tw.json +1 -0
  237. package/src/locale/zh.json +1 -0
  238. package/src/locale/zu.json +1 -0
  239. package/src/services/consent.ts +190 -38
  240. package/src/services/gdprMappings.ts +126 -0
  241. package/src/types/consent-config.d.ts +10 -1
  242. package/src/types/index.d.ts +9 -0
  243. package/src/views/Dialog/Message.tsx +1 -1
  244. package/src/views/Dialog/index.tsx +11 -6
@@ -43,7 +43,7 @@ export declare class ConsentConfig extends EventEmitter {
43
43
  get remoteConsent(): boolean;
44
44
  get type(): Flavor;
45
45
  set type(value: keyof typeof flavors);
46
- get variant(): 'one' | 'two' | 'three' | 'four' | 'five' | 'six' | '' | undefined;
46
+ get variant(): 'one' | 'two' | 'three' | 'four' | 'five' | 'six' | 'seven' | '' | undefined;
47
47
  get country(): string;
48
48
  get region(): string;
49
49
  set language(value: string);
@@ -60,6 +60,37 @@ export declare class ConsentConfig extends EventEmitter {
60
60
  get managePreferencesRequired(): boolean;
61
61
  get forceManagePreferencesButton(): boolean;
62
62
  get rejectAllRequired(): boolean;
63
+ /**
64
+ * True only for Flavor 7 (the analytics-on-by-default banner). Compared by
65
+ * value, not reference, because `merge()` deep-clones `type` on config load
66
+ * (see `isSameFlavor`).
67
+ */
68
+ private get isFlavorSeven();
69
+ /**
70
+ * Flavor 7 shows analytics enabled on first load, before the visitor has made
71
+ * a choice. Scoped to Flavor 7 so the other analytics-always banners (4, 5)
72
+ * keep their existing first-load behaviour. Only applies when there is no
73
+ * stored consent, so a prior opt-out is never overridden.
74
+ */
75
+ get analyticsDefaultsOnAtFirstLoad(): boolean;
76
+ /**
77
+ * Whether the banner shows a dismiss (X) button. Scoped to hide it for
78
+ * Flavor 7 only; every other flavor keeps its current behaviour (the X is
79
+ * rendered regardless of `canDismissDialog` today, so this intentionally does
80
+ * not gate on `dialogCloseButtonRequired`, which would change Flavors 3/6).
81
+ */
82
+ get showDismissButton(): boolean;
83
+ /**
84
+ * Locale key for the banner body copy. Flavor 7 explains that analytics is
85
+ * loaded by default; every other flavor keeps the standard `messaging.default`.
86
+ */
87
+ get bannerMessageKey(): string;
88
+ /**
89
+ * Locale key for the reject/deny button label. Flavor 7 uses
90
+ * "Deny Non-Essential"; every other flavor keeps its jurisdiction-specific
91
+ * "Reject All" label.
92
+ */
93
+ get rejectButtonLabelKey(): string;
63
94
  private _iabEnabled?;
64
95
  get iabEnabled(): boolean;
65
96
  set iabEnabled(value: boolean | undefined);
@@ -99,8 +130,15 @@ export declare class ConsentManager {
99
130
  private _translator;
100
131
  private _overridePalette?;
101
132
  private _googleConsentModeCallback?;
133
+ private _consentExpirationTestingSeconds?;
102
134
  private _deviceId;
103
135
  get deviceId(): string;
136
+ /**
137
+ * The debug-only consent expiration testing window, in seconds, or
138
+ * `undefined` when testing mode is disabled. Read by the consent service to
139
+ * decide whether stored consent should be treated as expired.
140
+ */
141
+ get consentExpirationTestingSeconds(): number | undefined;
104
142
  get customerId(): string;
105
143
  set customerId(value: string);
106
144
  get configId(): string;
@@ -145,6 +183,23 @@ export declare class ConsentManager {
145
183
  * @returns this ConsentManager instance for method chaining
146
184
  */
147
185
  setGoogleConsentModeCallback(callback: GoogleConsentModeCallback): this;
186
+ /**
187
+ * Debug-only. Force stored consent to expire after `expirationSeconds` so the
188
+ * consent banner can be re-triggered quickly during testing. Pass `null` (or a
189
+ * non-positive value) to disable. The value is held in memory only and is
190
+ * never persisted. Outside `__DEV__` this is a no-op (mirrors the Android
191
+ * SDK's `setConsentExpirationTestingMode`, which is only available in debug
192
+ * builds).
193
+ *
194
+ * Note: the expiration check runs while consent is loaded, so setting this at
195
+ * init time (via `overrides.consentExpirationTestingSeconds`) is the reliable
196
+ * path for a reload-and-reprompt test. A runtime call takes effect on the
197
+ * next consent load.
198
+ *
199
+ * @param expirationSeconds - Seconds until consent expires, or `null` to disable.
200
+ * @returns this ConsentManager instance for method chaining
201
+ */
202
+ setConsentExpirationTestingMode(expirationSeconds: number | null): this;
148
203
  /**
149
204
  * Trigger Google Consent Mode update with current consent categories
150
205
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ConsentManager.d.ts","sourceRoot":"","sources":["../../../src/ConsentManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConsentManager.d.ts","sourceRoot":"","sources":["../../../src/ConsentManager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/components/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAChE,OAAO,EAEN,KAAK,cAAc,EACnB,KAAK,SAAS,EAGd,KAAK,IAAI,EACT,KAAK,SAAS,EACd,MAAM,cAAc,CAAC;AAWtB,KAAK,WAAW,GAAG,KAAK,CAAC,eAAe,CACvC,IAAI,CAAC,cAAc,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC7B,CACD,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAqD5C,CAAC;AAGF,eAAO,MAAM,WAAW;YAGb,MAAM;8BA8BhB,CAAC;AAEF,eAAO,MAAM,UAAU,GACtB,OAAO,cAAc,GAAG;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,sBAoBD,CAAC;AAGF,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAkBzD,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAmB9C,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAsB5C,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAsBjD,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAWjD,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAkB5C,CAAC"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/components/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAChE,OAAO,EAEN,KAAK,cAAc,EACnB,KAAK,SAAS,EAGd,KAAK,IAAI,EACT,KAAK,SAAS,EACd,MAAM,cAAc,CAAC;AAWtB,KAAK,WAAW,GAAG,KAAK,CAAC,eAAe,CACvC,IAAI,CAAC,cAAc,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC7B,CACD,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAqD5C,CAAC;AAGF,eAAO,MAAM,WAAW;YAGb,MAAM;8BA8BhB,CAAC;AAEF,eAAO,MAAM,UAAU,GACtB,OAAO,cAAc,GAAG;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,sBAoBD,CAAC;AAGF,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAkBzD,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAmB9C,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAsB5C,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAsBjD,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAajD,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CAkB5C,CAAC"}
@@ -16,6 +16,7 @@ type OsanoPublicContextType = {
16
16
  setLocale: (locale: string) => void;
17
17
  showBanner: () => void;
18
18
  showDrawer: () => void;
19
+ setConsentExpirationTestingMode: (expirationSeconds: number | null) => void;
19
20
  isReady: boolean;
20
21
  };
21
22
  type OsanoPrivateContextType = {
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,KAAK,EACX,QAAQ,EACR,cAAc,EACd,KAAK,EACL,aAAa,EACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE7D,OAAO,EAGN,KAAK,mBAAmB,EACxB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAG9C,KAAK,sBAAsB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,CACX,QAAQ,CAAC,EAAE,mBAAmB,KAC1B,OAAO,GAAG,mBAAmB,EAAE,CAAC;IACrC,WAAW,EAAE,MAAM,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,MAAM,CAAC;IAC9B,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,OAAO,EAAE,CACR,OAAO,CAAC,EAAE,mBAAmB,GAAG,mBAAmB,EAAE,KACjD,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACpC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC9B,aAAa,EAAE,CACd,CAAC,EAAE,CACF,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,CAAC,KACjC,CAAC,IAAI,EAAE,cAAc,CAAC,WAAW,CAAC,KAAK,cAAc,CAAC,WAAW,CAAC,KACnE,IAAI,CAAC;IACV,gBAAgB,EAAE,CACjB,CAAC,EAAE,CACF,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,CAAC,KACjC,CAAC,IAAI,EAAE,cAAc,CAAC,WAAW,CAAC,KAAK,cAAc,CAAC,WAAW,CAAC,KACnE,IAAI,CAAC;IACV,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,QAAQ,EAAE,aAAa,CAAC,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IAC1D,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;IACpD,SAAS,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IACnC,4BAA4B,EAAE,CAAC,QAAQ,EAAE,yBAAyB,KAAK,IAAI,CAAC;CAC5E,CAAC;AAEF,eAAO,MAAM,kBAAkB,uCAa7B,CAAC;AAEH,eAAO,MAAM,mBAAmB,wCAe/B,CAAC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,KAAK,EACX,QAAQ,EACR,cAAc,EACd,KAAK,EACL,aAAa,EACb,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE7D,OAAO,EAGN,KAAK,mBAAmB,EACxB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAC7E,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,UAAU,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAG9C,KAAK,sBAAsB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,CACX,QAAQ,CAAC,EAAE,mBAAmB,KAC1B,OAAO,GAAG,mBAAmB,EAAE,CAAC;IACrC,WAAW,EAAE,MAAM,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,MAAM,CAAC;IAC9B,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,OAAO,EAAE,CACR,OAAO,CAAC,EAAE,mBAAmB,GAAG,mBAAmB,EAAE,KACjD,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;IACpC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,+BAA+B,EAAE,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC5E,OAAO,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC9B,aAAa,EAAE,CACd,CAAC,EAAE,CACF,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,CAAC,KACjC,CAAC,IAAI,EAAE,cAAc,CAAC,WAAW,CAAC,KAAK,cAAc,CAAC,WAAW,CAAC,KACnE,IAAI,CAAC;IACV,gBAAgB,EAAE,CACjB,CAAC,EAAE,CACF,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,CAAC,KACjC,CAAC,IAAI,EAAE,cAAc,CAAC,WAAW,CAAC,KAAK,cAAc,CAAC,WAAW,CAAC,KACnE,IAAI,CAAC;IACV,GAAG,CAAC,EAAE,cAAc,CAAC;IACrB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,QAAQ,EAAE,aAAa,CAAC,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IAC1D,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;IACpD,SAAS,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IACnC,4BAA4B,EAAE,CAAC,QAAQ,EAAE,yBAAyB,KAAK,IAAI,CAAC;CAC5E,CAAC;AAEF,eAAO,MAAM,kBAAkB,uCAc7B,CAAC;AAEH,eAAO,MAAM,mBAAmB,wCAe/B,CAAC"}
@@ -13,7 +13,8 @@ declare enum FlavorKeys {
13
13
  three = "three",
14
14
  four = "four",
15
15
  five = "five",
16
- six = "six"
16
+ six = "six",
17
+ seven = "seven"
17
18
  }
18
19
  export declare const flavors: Record<FlavorKeys, Flavor>;
19
20
  export declare const defaultFlavor = "two";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/flavors/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,aAAK,UAAU;IACd,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;IACb,GAAG,QAAQ;CACX;AASD,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAO9C,CAAC;AAEF,eAAO,MAAM,aAAa,QAAQ,CAAC;AAEnC,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/flavors/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,aAAK,UAAU;IACd,GAAG,QAAQ;IACX,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,KAAK,UAAU;CACf;AAUD,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAQ9C,CAAC;AAEF,eAAO,MAAM,aAAa,QAAQ,CAAC;AAEnC,eAAe,OAAO,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwD,MAAM,OAAO,CAAC;AA4B7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAG1C,OAAO,EAAE,kBAAkB,IAAI,YAAY,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,YAAY,EACX,gBAAgB,EAChB,yBAAyB,EACzB,sBAAsB,EACtB,mBAAmB,GACnB,MAAM,6BAA6B,CAAC;AAQrC,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAC1C,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CA8OnC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwD,MAAM,OAAO,CAAC;AA4B7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAG1C,OAAO,EAAE,kBAAkB,IAAI,YAAY,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,YAAY,EACX,gBAAgB,EAChB,yBAAyB,EACzB,sBAAsB,EACtB,mBAAmB,GACnB,MAAM,6BAA6B,CAAC;AAQrC,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAC1C,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAwPnC,CAAC"}
@@ -24,9 +24,14 @@ export type ConsentLookupResponseType = {
24
24
  lastConsentTimestamp: string;
25
25
  userConsentId: string;
26
26
  };
27
- export declare const storeConsent: (cmp: ConsentManager, consent?: ConsentCategoryType[], recordedRemotely?: boolean) => Promise<ConsentCategoryType[]>;
27
+ export declare const storeConsent: (cmp: ConsentManager, consent?: ConsentCategoryType[], recordedRemotely?: boolean, consentDate?: string | Date) => Promise<ConsentCategoryType[]>;
28
28
  export declare const clearConsent: (cmp: ConsentManager) => Promise<ConsentCategoryType[]>;
29
29
  export declare const migrateConsentStorage: (cmp: ConsentManager) => Promise<ConsentCategoryType[] | null>;
30
+ /**
31
+ * Returns true when the locally stored consent has aged past its expiration
32
+ * window (see {@link effectiveExpirationSeconds}).
33
+ */
34
+ export declare const isConsentExpired: (cmp: ConsentManager) => Promise<boolean>;
30
35
  export declare const recordConsent: (cmp: ConsentManager, consent?: ConsentCategoryType[]) => Promise<ConsentCategoryType[]>;
31
36
  export declare function hashExtUsrData(customerId: string, configId: string, extUsrData: string | undefined): string;
32
37
  export declare const fetchConsent: (cmp: ConsentManager) => Promise<ConsentCategory[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"consent.d.ts","sourceRoot":"","sources":["../../../../src/services/consent.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EACN,eAAe,EACf,KAAK,mBAAmB,EAIxB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAsBtD,MAAM,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACvC,SAAS,EAAE,mBAAmB,EAAE,CAAC;IACjC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;CACtB,CAAC;AA6CF,eAAO,MAAM,YAAY,GACxB,KAAK,cAAc,EACnB,UAAU,mBAAmB,EAAE,EAC/B,mBAAmB,OAAO,KACxB,OAAO,CAAC,mBAAmB,EAAE,CAyC/B,CAAC;AAEF,eAAO,MAAM,YAAY,GAAU,KAAK,cAAc,mCAyBrD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GACjC,KAAK,cAAc,KACjB,OAAO,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAgDtC,CAAC;AAoFF,eAAO,MAAM,aAAa,GACzB,KAAK,cAAc,EACnB,UAAU,mBAAmB,EAAE,mCAmB/B,CAAC;AAEF,wBAAgB,cAAc,CAC7B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GAAG,SAAS,GAC5B,MAAM,CAqBR;AAED,eAAO,MAAM,YAAY,GAAU,KAAK,cAAc,+BA6DrD,CAAC;AAKF,eAAO,MAAM,eAAe,GAC3B,YAAY,MAAM,EAClB,UAAU,MAAM,KACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAYvB,CAAC;AAEF,eAAO,MAAM,WAAW,GACvB,YAAY,MAAM,EAClB,UAAU,MAAM,EAChB,QAAQ,MAAM,KACZ,OAAO,CAAC,IAAI,CAed,CAAC;AAEF,eAAO,MAAM,qBAAqB,GACjC,YAAY,MAAM,EAClB,UAAU,MAAM,KACd,OAAO,CAAC,IAAI,GAAG,IAAI,CAYrB,CAAC;AAEF,eAAO,MAAM,cAAc,GAC1B,YAAY,MAAM,EAClB,UAAU,MAAM,KACd,OAAO,CAAC,OAAO,CAejB,CAAC;AAEF,eAAO,MAAM,aAAa,GACzB,YAAY,MAAM,EAClB,UAAU,MAAM,KACd,OAAO,CAAC,MAAM,GAAG,IAAI,CASvB,CAAC;AAEF,eAAO,MAAM,qBAAqB,GACjC,YAAY,MAAM,EAClB,UAAU,MAAM,KACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAUvB,CAAC;AAEF,eAAO,MAAM,WAAW,GACvB,YAAY,MAAM,EAClB,UAAU,MAAM,KACd,OAAO,CAAC,MAAM,CAkHhB,CAAC"}
1
+ {"version":3,"file":"consent.d.ts","sourceRoot":"","sources":["../../../../src/services/consent.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EACN,eAAe,EACf,KAAK,mBAAmB,EAIxB,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAsBtD,MAAM,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACvC,SAAS,EAAE,mBAAmB,EAAE,CAAC;IACjC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;CACtB,CAAC;AAsDF,eAAO,MAAM,YAAY,GACxB,KAAK,cAAc,EACnB,UAAU,mBAAmB,EAAE,EAC/B,mBAAmB,OAAO,EAI1B,cAAc,MAAM,GAAG,IAAI,KACzB,OAAO,CAAC,mBAAmB,EAAE,CA6C/B,CAAC;AAEF,eAAO,MAAM,YAAY,GAAU,KAAK,cAAc,mCAyBrD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GACjC,KAAK,cAAc,KACjB,OAAO,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAgDtC,CAAC;AA6KF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAC5B,KAAK,cAAc,KACjB,OAAO,CAAC,OAAO,CAOjB,CAAC;AAEF,eAAO,MAAM,aAAa,GACzB,KAAK,cAAc,EACnB,UAAU,mBAAmB,EAAE,mCAmB/B,CAAC;AAEF,wBAAgB,cAAc,CAC7B,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GAAG,SAAS,GAC5B,MAAM,CAqBR;AAED,eAAO,MAAM,YAAY,GAAU,KAAK,cAAc,+BA2FrD,CAAC;AAKF,eAAO,MAAM,eAAe,GAC3B,YAAY,MAAM,EAClB,UAAU,MAAM,KACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAYvB,CAAC;AAEF,eAAO,MAAM,WAAW,GACvB,YAAY,MAAM,EAClB,UAAU,MAAM,EAChB,QAAQ,MAAM,KACZ,OAAO,CAAC,IAAI,CAed,CAAC;AAEF,eAAO,MAAM,qBAAqB,GACjC,YAAY,MAAM,EAClB,UAAU,MAAM,KACd,OAAO,CAAC,IAAI,GAAG,IAAI,CAYrB,CAAC;AAEF,eAAO,MAAM,cAAc,GAC1B,YAAY,MAAM,EAClB,UAAU,MAAM,KACd,OAAO,CAAC,OAAO,CAejB,CAAC;AAEF,eAAO,MAAM,aAAa,GACzB,YAAY,MAAM,EAClB,UAAU,MAAM,KACd,OAAO,CAAC,MAAM,GAAG,IAAI,CASvB,CAAC;AAEF,eAAO,MAAM,qBAAqB,GACjC,YAAY,MAAM,EAClB,UAAU,MAAM,KACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAUvB,CAAC;AAEF,eAAO,MAAM,WAAW,GACvB,YAAY,MAAM,EAClB,UAAU,MAAM,KACd,OAAO,CAAC,MAAM,CAkHhB,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Per-country GDPR metadata served at `/mappings.json`. Only the fields the SDK
3
+ * consumes are typed here; the document may carry more (e.g. forced
4
+ * classifications) that we intentionally ignore.
5
+ */
6
+ export type GdprCountryInfo = {
7
+ gdprApplies?: boolean;
8
+ flavor?: string;
9
+ consentExpiration?: number;
10
+ };
11
+ export type GdprMappings = Record<string, GdprCountryInfo>;
12
+ /**
13
+ * Returns the GDPR country mappings, preferring a fresh (<24h) cache and
14
+ * otherwise fetching `${OSANO_ORIGIN}/mappings.json`. On a network/parse error
15
+ * it falls back to any stale cache rather than losing production expiration.
16
+ * Returns null only when there is neither a usable network response nor a
17
+ * cached copy.
18
+ */
19
+ export declare const fetchGdprMappings: () => Promise<GdprMappings | null>;
20
+ /**
21
+ * Resolves the production consent-expiration interval (in seconds) for a
22
+ * country from the GDPR mappings: the country's own value, falling back to the
23
+ * `defaults` bucket. Returns null when no positive interval is configured — in
24
+ * that case consent has no production expiration.
25
+ *
26
+ * Note: unlike the Android SDK, there is no hardcoded numeric fallback here.
27
+ * Android returns `365` when nothing is configured, but consumes it as seconds
28
+ * (~6 minutes), which would silently expire production consent; failing open is
29
+ * the safer behavior.
30
+ */
31
+ export declare const getConsentExpirationSeconds: (country: string | undefined) => Promise<number | null>;
32
+ //# sourceMappingURL=gdprMappings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gdprMappings.d.ts","sourceRoot":"","sources":["../../../../src/services/gdprMappings.ts"],"names":[],"mappings":"AAkBA;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;AA2B3D;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,QAAa,OAAO,CAAC,YAAY,GAAG,IAAI,CAmCrE,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,2BAA2B,GACvC,SAAS,MAAM,GAAG,SAAS,KACzB,OAAO,CAAC,MAAM,GAAG,IAAI,CAUvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Dialog/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAQ1C,OAAO,EACN,KAAK,EASL,MAAM,cAAc,CAAC;AAiBtB,eAAO,MAAM,MAAM,QAAO,YAAY,CAAC,KAAK,CA6O3C,CAAC;AAwHF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Dialog/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAQ1C,OAAO,EACN,KAAK,EASL,MAAM,cAAc,CAAC;AAiBtB,eAAO,MAAM,MAAM,QAAO,YAAY,CAAC,KAAK,CAkP3C,CAAC;AAwHF,eAAe,MAAM,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@osano/osano-cmp-react-native",
3
- "version": "0.18.3",
3
+ "version": "0.18.5",
4
4
  "description": "Package and example for the react-native Osano CMP SDK",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -31,9 +31,9 @@
31
31
  ],
32
32
  "scripts": {
33
33
  "example": "yarn workspace osano-cmp-sdk-example",
34
- "test": "jest src/services/__tests__/consent.test.ts src/services/__tests__/fetchConfig.test.ts src/__tests__/index.test.tsx src/services/__tests__/google-consent-mode.test.ts src/__tests__/OsanoLogger.test.ts src/__tests__/constants.test.ts src/__tests__/reducer.test.ts src/__tests__/selectors.test.ts src/__tests__/ConsentManager.test.ts src/__tests__/ConsentUiBuilder.test.tsx src/utils/__tests__/WebStorage.test.ts src/native/__tests__/OsanoCmp.test.ts",
35
- "test:legacy": "REACT_NATIVE_NEW_ARCH_ENABLED=false jest src/services/__tests__/consent.test.ts src/services/__tests__/fetchConfig.test.ts src/__tests__/index.test.tsx src/services/__tests__/google-consent-mode.test.ts src/__tests__/OsanoLogger.test.ts src/__tests__/constants.test.ts src/__tests__/reducer.test.ts src/__tests__/selectors.test.ts src/__tests__/ConsentManager.test.ts src/__tests__/ConsentUiBuilder.test.tsx src/utils/__tests__/WebStorage.test.ts src/native/__tests__/OsanoCmp.test.ts",
36
- "test:newarch": "REACT_NATIVE_NEW_ARCH_ENABLED=true jest src/services/__tests__/consent.test.ts src/services/__tests__/fetchConfig.test.ts src/__tests__/index.test.tsx src/services/__tests__/google-consent-mode.test.ts src/__tests__/OsanoLogger.test.ts src/__tests__/constants.test.ts src/__tests__/reducer.test.ts src/__tests__/selectors.test.ts src/__tests__/ConsentManager.test.ts src/__tests__/ConsentUiBuilder.test.tsx src/utils/__tests__/WebStorage.test.ts src/native/__tests__/OsanoCmp.test.ts",
34
+ "test": "jest src/services/__tests__/consent.test.ts src/services/__tests__/gdprMappings.test.ts src/services/__tests__/fetchConfig.test.ts src/__tests__/index.test.tsx src/services/__tests__/google-consent-mode.test.ts src/__tests__/OsanoLogger.test.ts src/__tests__/constants.test.ts src/__tests__/reducer.test.ts src/__tests__/selectors.test.ts src/__tests__/ConsentManager.test.ts src/__tests__/ConsentUiBuilder.test.tsx src/utils/__tests__/WebStorage.test.ts src/native/__tests__/OsanoCmp.test.ts",
35
+ "test:legacy": "REACT_NATIVE_NEW_ARCH_ENABLED=false jest src/services/__tests__/consent.test.ts src/services/__tests__/gdprMappings.test.ts src/services/__tests__/fetchConfig.test.ts src/__tests__/index.test.tsx src/services/__tests__/google-consent-mode.test.ts src/__tests__/OsanoLogger.test.ts src/__tests__/constants.test.ts src/__tests__/reducer.test.ts src/__tests__/selectors.test.ts src/__tests__/ConsentManager.test.ts src/__tests__/ConsentUiBuilder.test.tsx src/utils/__tests__/WebStorage.test.ts src/native/__tests__/OsanoCmp.test.ts",
36
+ "test:newarch": "REACT_NATIVE_NEW_ARCH_ENABLED=true jest src/services/__tests__/consent.test.ts src/services/__tests__/gdprMappings.test.ts src/services/__tests__/fetchConfig.test.ts src/__tests__/index.test.tsx src/services/__tests__/google-consent-mode.test.ts src/__tests__/OsanoLogger.test.ts src/__tests__/constants.test.ts src/__tests__/reducer.test.ts src/__tests__/selectors.test.ts src/__tests__/ConsentManager.test.ts src/__tests__/ConsentUiBuilder.test.tsx src/utils/__tests__/WebStorage.test.ts src/native/__tests__/OsanoCmp.test.ts",
37
37
  "test:google-consent-mode": "jest src/services/__tests__/google-consent-mode.test.ts",
38
38
  "typecheck": "tsc --noEmit",
39
39
  "lint": "eslint",
@@ -119,6 +119,9 @@
119
119
  "documentation"
120
120
  ],
121
121
  "packageManager": "yarn@3.6.4",
122
+ "engines": {
123
+ "node": ">=22.0.0 <23.0.0"
124
+ },
122
125
  "jest": {
123
126
  "preset": "@react-native/jest-preset",
124
127
  "setupFilesAfterEnv": [
@@ -112,6 +112,23 @@ export const DEFAULT_CONFIG: Config = {
112
112
  iabEnabled: false,
113
113
  };
114
114
 
115
+ /**
116
+ * Compare two flavors by value rather than reference. The resolved `type` is
117
+ * deep-cloned by `merge()` when the config loads (see `ConsentConfig.load`), so
118
+ * `this.type === flavors.seven` stops holding after the first config load even
119
+ * though every field still matches. Every flavor has a unique field signature,
120
+ * so a field-by-field comparison reliably identifies a flavor post-clone.
121
+ */
122
+ const isSameFlavor = (a: Flavor | undefined, b: Flavor): boolean =>
123
+ !!a &&
124
+ a.timer === b.timer &&
125
+ a.analyticsAlways === b.analyticsAlways &&
126
+ a.categories === b.categories &&
127
+ a.rejectAll === b.rejectAll &&
128
+ a.firstLayerUsage === b.firstLayerUsage &&
129
+ a.managePreferences === b.managePreferences &&
130
+ a.canDismissDialog === b.canDismissDialog;
131
+
115
132
  const migrateIabConfig = (
116
133
  config: Iab,
117
134
  gdprApplies: boolean = false,
@@ -320,6 +337,7 @@ export class ConsentConfig extends EventEmitter {
320
337
  | 'four'
321
338
  | 'five'
322
339
  | 'six'
340
+ | 'seven'
323
341
  | ''
324
342
  | undefined {
325
343
  return this._config.variant;
@@ -391,6 +409,56 @@ export class ConsentConfig extends EventEmitter {
391
409
  return this.type.rejectAll;
392
410
  }
393
411
 
412
+ /**
413
+ * True only for Flavor 7 (the analytics-on-by-default banner). Compared by
414
+ * value, not reference, because `merge()` deep-clones `type` on config load
415
+ * (see `isSameFlavor`).
416
+ */
417
+ private get isFlavorSeven(): boolean {
418
+ return isSameFlavor(this.type, flavors.seven);
419
+ }
420
+
421
+ /**
422
+ * Flavor 7 shows analytics enabled on first load, before the visitor has made
423
+ * a choice. Scoped to Flavor 7 so the other analytics-always banners (4, 5)
424
+ * keep their existing first-load behaviour. Only applies when there is no
425
+ * stored consent, so a prior opt-out is never overridden.
426
+ */
427
+ get analyticsDefaultsOnAtFirstLoad(): boolean {
428
+ return this.isFlavorSeven;
429
+ }
430
+
431
+ /**
432
+ * Whether the banner shows a dismiss (X) button. Scoped to hide it for
433
+ * Flavor 7 only; every other flavor keeps its current behaviour (the X is
434
+ * rendered regardless of `canDismissDialog` today, so this intentionally does
435
+ * not gate on `dialogCloseButtonRequired`, which would change Flavors 3/6).
436
+ */
437
+ get showDismissButton(): boolean {
438
+ return !this.isFlavorSeven;
439
+ }
440
+
441
+ /**
442
+ * Locale key for the banner body copy. Flavor 7 explains that analytics is
443
+ * loaded by default; every other flavor keeps the standard `messaging.default`.
444
+ */
445
+ get bannerMessageKey(): string {
446
+ return this.isFlavorSeven
447
+ ? 'messaging.analyticsOnByDefault'
448
+ : 'messaging.default';
449
+ }
450
+
451
+ /**
452
+ * Locale key for the reject/deny button label. Flavor 7 uses
453
+ * "Deny Non-Essential"; every other flavor keeps its jurisdiction-specific
454
+ * "Reject All" label.
455
+ */
456
+ get rejectButtonLabelKey(): string {
457
+ return this.isFlavorSeven
458
+ ? 'buttons.denyNonEssential'
459
+ : `buttons.dialog.denyAll.${this.jurisdiction}`;
460
+ }
461
+
394
462
  // IAB
395
463
  private _iabEnabled?: boolean;
396
464
  get iabEnabled(): boolean {
@@ -615,12 +683,22 @@ export class ConsentManager {
615
683
  private _translator: Translator = new Translator(this);
616
684
  private _overridePalette?: Palette;
617
685
  private _googleConsentModeCallback?: GoogleConsentModeCallback;
686
+ private _consentExpirationTestingSeconds?: number;
618
687
 
619
688
  private _deviceId = '';
620
689
  public get deviceId(): string {
621
690
  return this._deviceId;
622
691
  }
623
692
 
693
+ /**
694
+ * The debug-only consent expiration testing window, in seconds, or
695
+ * `undefined` when testing mode is disabled. Read by the consent service to
696
+ * decide whether stored consent should be treated as expired.
697
+ */
698
+ public get consentExpirationTestingSeconds(): number | undefined {
699
+ return this._consentExpirationTestingSeconds;
700
+ }
701
+
624
702
  public get customerId(): string {
625
703
  return this._config.customerId;
626
704
  }
@@ -659,8 +737,28 @@ export class ConsentManager {
659
737
  }
660
738
 
661
739
  constructor(options?: OsanoOverrides, extUsrData?: string) {
662
- const { locale, flavor, iabEnabled, iabFrameworks, iabVersions, palette } =
663
- options || {};
740
+ const {
741
+ locale,
742
+ flavor,
743
+ iabEnabled,
744
+ iabFrameworks,
745
+ iabVersions,
746
+ palette,
747
+ consentExpirationTestingSeconds,
748
+ } = options || {};
749
+
750
+ // Debug-only: allow a short consent expiration window for testing. Held
751
+ // in memory only (never persisted), and ignored outside __DEV__.
752
+ if (
753
+ __DEV__ &&
754
+ consentExpirationTestingSeconds != null &&
755
+ consentExpirationTestingSeconds > 0
756
+ ) {
757
+ this._consentExpirationTestingSeconds = consentExpirationTestingSeconds;
758
+ OsanoLogger.warn(
759
+ `⚠️ TESTING MODE - Consent will expire in ${consentExpirationTestingSeconds} seconds`,
760
+ );
761
+ }
664
762
 
665
763
  this._config.iabEnabled = iabEnabled ?? undefined;
666
764
  this._config.iabFrameworks = iabFrameworks || this._config.iabFrameworks;
@@ -926,6 +1024,42 @@ export class ConsentManager {
926
1024
  return this;
927
1025
  }
928
1026
 
1027
+ /**
1028
+ * Debug-only. Force stored consent to expire after `expirationSeconds` so the
1029
+ * consent banner can be re-triggered quickly during testing. Pass `null` (or a
1030
+ * non-positive value) to disable. The value is held in memory only and is
1031
+ * never persisted. Outside `__DEV__` this is a no-op (mirrors the Android
1032
+ * SDK's `setConsentExpirationTestingMode`, which is only available in debug
1033
+ * builds).
1034
+ *
1035
+ * Note: the expiration check runs while consent is loaded, so setting this at
1036
+ * init time (via `overrides.consentExpirationTestingSeconds`) is the reliable
1037
+ * path for a reload-and-reprompt test. A runtime call takes effect on the
1038
+ * next consent load.
1039
+ *
1040
+ * @param expirationSeconds - Seconds until consent expires, or `null` to disable.
1041
+ * @returns this ConsentManager instance for method chaining
1042
+ */
1043
+ public setConsentExpirationTestingMode(
1044
+ expirationSeconds: number | null,
1045
+ ): this {
1046
+ if (!__DEV__) {
1047
+ // Documented as a no-op outside debug builds — stay completely silent
1048
+ // so production callers see no logging or side effects.
1049
+ return this;
1050
+ }
1051
+ if (expirationSeconds == null || expirationSeconds <= 0) {
1052
+ this._consentExpirationTestingSeconds = undefined;
1053
+ OsanoLogger.info('Consent expiration testing mode disabled');
1054
+ } else {
1055
+ this._consentExpirationTestingSeconds = expirationSeconds;
1056
+ OsanoLogger.warn(
1057
+ `⚠️ TESTING MODE - Consent will expire in ${expirationSeconds} seconds`,
1058
+ );
1059
+ }
1060
+ return this;
1061
+ }
1062
+
929
1063
  /**
930
1064
  * Trigger Google Consent Mode update with current consent categories
931
1065
  *
@@ -187,7 +187,7 @@ export const AcceptButton: React.FC<ButtonProps> = (props) => {
187
187
 
188
188
  export const DenyButton: React.FC<ButtonProps> = (props) => {
189
189
  const { cmp, dispatch } = useContext(OsanoPrivateContext);
190
- const { onPress, ...remain } = props;
190
+ const { onPress, title, defaultPhrase, testID, ...remain } = props;
191
191
 
192
192
  const handleReject = useCallback(() => {
193
193
  dispatch(setAllVendorConsent(false));
@@ -202,9 +202,9 @@ export const DenyButton: React.FC<ButtonProps> = (props) => {
202
202
  <BaseButton
203
203
  {...remain}
204
204
  onPress={onPress || handleReject}
205
- title="buttons.deny"
206
- defaultPhrase="Deny"
207
- testID="Deny"
205
+ title={title ?? 'buttons.deny'}
206
+ defaultPhrase={defaultPhrase ?? 'Deny'}
207
+ testID={testID ?? 'Deny'}
208
208
  />
209
209
  );
210
210
  };
@@ -236,10 +236,12 @@ export const AcceptAllButton: React.FC<ButtonProps> = (props) => {
236
236
  export const RejectAllButton: React.FC<ButtonProps> = (props) => {
237
237
  const { config } = useContext(OsanoPrivateContext);
238
238
 
239
+ // Flavor 7 relabels the reject button to "Deny Non-Essential"; every other
240
+ // flavor uses its jurisdiction-specific "Reject All" label.
239
241
  return (
240
242
  <DenyButton
241
243
  {...props}
242
- title={`buttons.dialog.denyAll.${config?.jurisdiction}`}
244
+ title={config?.rejectButtonLabelKey}
243
245
  defaultPhrase="Reject All"
244
246
  testID="Reject All"
245
247
  />
package/src/context.ts CHANGED
@@ -32,6 +32,7 @@ type OsanoPublicContextType = {
32
32
  setLocale: (locale: string) => void;
33
33
  showBanner: () => void;
34
34
  showDrawer: () => void;
35
+ setConsentExpirationTestingMode: (expirationSeconds: number | null) => void;
35
36
  isReady: boolean;
36
37
  };
37
38
 
@@ -70,6 +71,7 @@ export const OsanoPublicContext = React.createContext<OsanoPublicContextType>({
70
71
  setLocale: noop,
71
72
  showBanner: noop,
72
73
  showDrawer: noop,
74
+ setConsentExpirationTestingMode: noop,
73
75
  isReady: false,
74
76
  });
75
77
 
@@ -15,11 +15,13 @@ enum FlavorKeys {
15
15
  four = 'four',
16
16
  five = 'five',
17
17
  six = 'six',
18
+ seven = 'seven',
18
19
  }
19
20
 
20
21
  import { five } from './five.json';
21
22
  import { four } from './four.json';
22
23
  import { one } from './one.json';
24
+ import { seven } from './seven.json';
23
25
  import { six } from './six.json';
24
26
  import { three } from './three.json';
25
27
  import { two } from './two.json';
@@ -31,6 +33,7 @@ export const flavors: Record<FlavorKeys, Flavor> = {
31
33
  four: four as Flavor,
32
34
  five: five as Flavor,
33
35
  six: six as Flavor,
36
+ seven: seven as Flavor,
34
37
  };
35
38
 
36
39
  export const defaultFlavor = 'two';
@@ -0,0 +1,11 @@
1
+ {
2
+ "seven": {
3
+ "timer": false,
4
+ "analyticsAlways": true,
5
+ "categories": false,
6
+ "rejectAll": true,
7
+ "firstLayerUsage": false,
8
+ "managePreferences": true,
9
+ "canDismissDialog": false
10
+ }
11
+ }
package/src/index.tsx CHANGED
@@ -161,6 +161,15 @@ export const Osano: React.FunctionComponent<
161
161
  return consentManager.current.jurisdiction;
162
162
  }, []);
163
163
 
164
+ const handleSetConsentExpirationTestingMode = useCallback(
165
+ (expirationSeconds: number | null) => {
166
+ consentManager.current.setConsentExpirationTestingMode(
167
+ expirationSeconds,
168
+ );
169
+ },
170
+ [],
171
+ );
172
+
164
173
  const context = useMemo(() => {
165
174
  return {
166
175
  locale: consentManager.current.translator.locale,
@@ -172,6 +181,7 @@ export const Osano: React.FunctionComponent<
172
181
  setLocale: handleSetLocale,
173
182
  showBanner: handleShowDialog,
174
183
  showDrawer: handleShowDrawer,
184
+ setConsentExpirationTestingMode: handleSetConsentExpirationTestingMode,
175
185
  isReady: consentManager.current.loaded,
176
186
  };
177
187
  }, [
@@ -51,6 +51,7 @@
51
51
  "messaging": {
52
52
  "poweredBy": "Aangedryf deur Osano",
53
53
  "default": "Hierdie webwerf gebruik tegnologieë soos webkoekies om noodsaaklike werffunksionaliteit te aktiveer, sowel as vir %{analytics}, %{personalization} en %{marketing}.",
54
+ "analyticsOnByDefault": "Hierdie webwerf gebruik tegnologieë soos koekies om noodsaaklike webwerffunksionaliteit moontlik te maak. %{analytics}–tegnologieë word ook standaard gelaai om ons te help om webwerfprestasie te meet. U toestemming is nie nodig nie, maar u kan te eniger tyd uittree. Alle ander kategorieë, insluitend %{marketing} en %{personalization}, sal nie sonder u toestemming geaktiveer word nie.",
54
55
  "categories": "Jy kan jou instellings enige tyd verander of die verstekinstellings aanvaar.",
55
56
  "cookieQuestion": "Wat is 'n koekie?",
56
57
  "timer": "Om meer te wete te kom, sien die volgende skakel:",
@@ -51,6 +51,7 @@
51
51
  "messaging": {
52
52
  "poweredBy": "بدعم من Osano",
53
53
  "default": "يستخدم هذا الموقع تقنيات مثل ملفات تعريف الارتباط لتمكين وظائف الموقع الأساسية، بالإضافة إلى %{analytics} و%{personalization} و%{marketing}.",
54
+ "analyticsOnByDefault": "يستخدم هذا الموقع تقنيات مثل ملفات تعريف الارتباط لتمكين وظائف الموقع الأساسية. كما يتم تحميل تقنيات %{analytics} افتراضيًا لمساعدتنا في قياس أداء الموقع. موافقتك ليست مطلوبة، ولكن يمكنك إلغاء الاشتراك في أي وقت. لن يتم تفعيل أي فئات أخرى، بما في ذلك %{marketing} و%{personalization}، بدون موافقتك.",
54
55
  "categories": "بإمكانك تغيير إعداداتك وقتما تشاء أو قبول الإعدادات الافتراضية.",
55
56
  "cookieQuestion": "ما ملف تعريف الارتباط؟",
56
57
  "timer": "لمعرفة المزيد، يُرجى زيارة الرابط التالي:",
@@ -51,6 +51,7 @@
51
51
  "messaging": {
52
52
  "poweredBy": "Осъществено от Osano",
53
53
  "default": "Този уебсайт използва технологии като бисквитки, за да активира основната функционалност на сайта, както и за %{analytics}, %{personalization} и %{marketing}.",
54
+ "analyticsOnByDefault": "Този уебсайт използва технологии като „бисквитки“, за да осигури основна функционалност на сайта. Технологиите %{analytics} също се зареждат по подразбиране, за да ни помогнат да измерим ефективността на сайта. Вашето съгласие не е необходимо, но можете да се откажете по всяко време. Всички останали категории, включително %{marketing} и %{personalization}, няма да бъдат активирани без вашето съгласие.",
54
55
  "categories": "Можете да промените настройките си по всяко време или да приемете настройките по подразбиране.",
55
56
  "cookieQuestion": "Какво представлява бисквитка?",
56
57
  "timer": "За да научите повече, вижте следната връзка:",
@@ -51,6 +51,7 @@
51
51
  "messaging": {
52
52
  "poweredBy": "Desenvolupat per Osano",
53
53
  "default": "Aquest lloc web utilitza tecnologies com ara galetes per habilitar la funcionalitat essencial del lloc, així com per a %{analytics}, %{personalization} i %{marketing}.",
54
+ "analyticsOnByDefault": "Aquest lloc web utilitza tecnologies com ara les galetes (cookies) per habilitar les funcions essencials del lloc. Les tecnologies %{analytics} també es carreguen per defecte per ajudar–nos a mesurar el rendiment del lloc. No cal el vostre consentiment, però podeu optar per no participar–hi en qualsevol moment. Cap altra categoria, incloses %{marketing} i %{personalization}, no s'activarà sense el vostre consentiment.",
54
55
  "categories": "Podeu canviar la configuració en qualsevol moment o acceptar la configuració predeterminada.",
55
56
  "cookieQuestion": "Què és una galeta?",
56
57
  "timer": "Per obtenir més informació, consulteu el següent enllaç:",
@@ -51,6 +51,7 @@
51
51
  "messaging": {
52
52
  "poweredBy": "Běží na Osano",
53
53
  "default": "Tento web využívá technologie, jako jsou soubory cookie, aby umožnily základní funkce webu, a také pro %{analytics}, %{personalization} a %{marketing}.",
54
+ "analyticsOnByDefault": "Tyto webové stránky využívají technologie, jako jsou soubory cookie, k zajištění základních funkcí webu. Technologie %{analytics} jsou také standardně načteny, aby nám pomohly měřit výkon webu. Váš souhlas není vyžadován, ale můžete se kdykoli odhlásit. Všechny ostatní kategorie, včetně %{marketing} a %{personalization}, nebudou bez vašeho souhlasu aktivovány.",
54
55
  "categories": "Nastavení můžete kdykoli změnit nebo přijmout výchozí nastavení.",
55
56
  "cookieQuestion": "Své preference můžete kdykoli změnit nebo přijmout výchozí nastavení.",
56
57
  "timer": "Chcete-li se dozvědět více, podívejte se na následující odkaz:",
@@ -51,6 +51,7 @@
51
51
  "messaging": {
52
52
  "poweredBy": "Drevet af Osano",
53
53
  "default": "Dette websted bruger teknologier såsom cookies til at aktivere væsentlige webstedsfunktioner såvel som for %{analytics}, %{personalization} og %{marketing}.",
54
+ "analyticsOnByDefault": "Dette websted bruger teknologier som f.eks. cookies til at muliggøre essentiel webstedsfunktionalitet. %{analytics}–teknologier indlæses også som standard for at hjælpe os med at måle webstedets ydeevne. Dit samtykke er ikke påkrævet, men du kan til enhver tid framelde dig. Alle andre kategorier, herunder %{marketing} og %{personalization}, vil ikke blive aktiveret uden dit samtykke.",
54
55
  "categories": "Du kan til enhver tid ændre dine indstillinger eller acceptere standardindstillingerne.",
55
56
  "cookieQuestion": "Hvad er en cookie?",
56
57
  "timer": "For at lære mere, se følgende link:",