@plaidev/karte-action-sdk 1.1.184-28069312.e227ca9d → 1.1.184-28093385.169b3110
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/hydrate/index.es.d.ts +22 -0
- package/dist/hydrate/index.es.js +31 -2
- package/dist/index.es.d.ts +22 -0
- package/dist/index.es.js +31 -2
- package/dist/templates.cjs.js +2 -1
- package/dist/templates.js +2 -1
- package/package.json +1 -1
@@ -152,6 +152,10 @@ interface ActionOptions<Props, Variables, VariablesQuery> {
|
|
152
152
|
karteTemplate?: {
|
153
153
|
[key: string]: any;
|
154
154
|
};
|
155
|
+
/**
|
156
|
+
* アクション実行時のコンテキスト
|
157
|
+
*/
|
158
|
+
context: ActionRunnerContext;
|
155
159
|
}
|
156
160
|
/**
|
157
161
|
* KARTE のシステム設定情報
|
@@ -174,6 +178,13 @@ type ActionHookLog = {
|
|
174
178
|
name: string;
|
175
179
|
values?: any;
|
176
180
|
};
|
181
|
+
/**
|
182
|
+
* アクション実行時のコンテキスト
|
183
|
+
*/
|
184
|
+
type ActionRunnerContext = {
|
185
|
+
api_key: string;
|
186
|
+
target?: "web" | "native";
|
187
|
+
};
|
177
188
|
type ActionTableResult = number | string | boolean | Date | null | undefined;
|
178
189
|
type ActionTableQueryParam = string | number | boolean | Date;
|
179
190
|
type ActionTableQueryParams = {
|
@@ -1582,6 +1593,10 @@ declare namespace widget {
|
|
1582
1593
|
karteTemplate?: {
|
1583
1594
|
[key: string]: any;
|
1584
1595
|
};
|
1596
|
+
/**
|
1597
|
+
* アクション実行時のコンテキスト
|
1598
|
+
*/
|
1599
|
+
context: ActionRunnerContext;
|
1585
1600
|
}
|
1586
1601
|
/**
|
1587
1602
|
* KARTE のシステム設定情報
|
@@ -1604,6 +1619,13 @@ declare namespace widget {
|
|
1604
1619
|
name: string;
|
1605
1620
|
values?: any;
|
1606
1621
|
};
|
1622
|
+
/**
|
1623
|
+
* アクション実行時のコンテキスト
|
1624
|
+
*/
|
1625
|
+
type ActionRunnerContext = {
|
1626
|
+
api_key: string;
|
1627
|
+
target?: "web" | "native";
|
1628
|
+
};
|
1607
1629
|
type ActionTableResult = number | string | boolean | Date | null | undefined;
|
1608
1630
|
type ActionTableQueryParam = string | number | boolean | Date;
|
1609
1631
|
type ActionTableQueryParams = {
|
package/dist/hydrate/index.es.js
CHANGED
@@ -631,6 +631,28 @@ function getSystem() {
|
|
631
631
|
function setSystem(config) {
|
632
632
|
system.set(config);
|
633
633
|
}
|
634
|
+
/**
|
635
|
+
* アクション実行時のコンテキストを保存するストア
|
636
|
+
*
|
637
|
+
* @internal
|
638
|
+
*/
|
639
|
+
const actionRunnerContext = writable(null);
|
640
|
+
/**
|
641
|
+
* アクション実行時のコンテキストを取得する
|
642
|
+
*
|
643
|
+
* @internal
|
644
|
+
*/
|
645
|
+
function getActionRunnerContext() {
|
646
|
+
return get(actionRunnerContext);
|
647
|
+
}
|
648
|
+
/**
|
649
|
+
* アクション実行時のコンテキストを保存する
|
650
|
+
*
|
651
|
+
* @internal
|
652
|
+
*/
|
653
|
+
function setActionRunnerContext(value) {
|
654
|
+
return actionRunnerContext.set(value);
|
655
|
+
}
|
634
656
|
/**
|
635
657
|
* Store to handle current state ID
|
636
658
|
*
|
@@ -1531,6 +1553,7 @@ function createModal(App, options = {
|
|
1531
1553
|
variables: {},
|
1532
1554
|
localVariablesQuery: undefined,
|
1533
1555
|
karteTemplate: {},
|
1556
|
+
context: { api_key: '' },
|
1534
1557
|
}) {
|
1535
1558
|
let app = null;
|
1536
1559
|
const data = {
|
@@ -1730,6 +1753,7 @@ function createApp(App, options = {
|
|
1730
1753
|
props: {},
|
1731
1754
|
variables: {},
|
1732
1755
|
localVariablesQuery: undefined,
|
1756
|
+
context: { api_key: '' },
|
1733
1757
|
}) {
|
1734
1758
|
let app = null;
|
1735
1759
|
const close = () => {
|
@@ -1810,6 +1834,7 @@ async function runScript$1(options = {
|
|
1810
1834
|
variables: {},
|
1811
1835
|
localVariablesQuery: undefined,
|
1812
1836
|
karteTemplate: {},
|
1837
|
+
context: { api_key: '' },
|
1813
1838
|
}) {
|
1814
1839
|
if (!options.onCreate)
|
1815
1840
|
return;
|
@@ -1920,6 +1945,7 @@ function create(App, options = {
|
|
1920
1945
|
variables: {},
|
1921
1946
|
localVariablesQuery: undefined,
|
1922
1947
|
karteTemplate: {},
|
1948
|
+
context: { api_key: '' },
|
1923
1949
|
}) {
|
1924
1950
|
const data = {
|
1925
1951
|
...options.props,
|
@@ -1951,6 +1977,7 @@ function create(App, options = {
|
|
1951
1977
|
shortenId: data.shorten_id || null,
|
1952
1978
|
campaignId: data.campaign_id || null,
|
1953
1979
|
});
|
1980
|
+
setActionRunnerContext(options.context);
|
1954
1981
|
const loggerCleanup = listenConsoleLogger() ;
|
1955
1982
|
window.addEventListener(ACTION_DESTROY_EVENT, handleDestroy);
|
1956
1983
|
window.addEventListener('beforeunload', dispatchDestroyEvent, false);
|
@@ -2795,6 +2822,7 @@ const moveTo = (to) => () => {
|
|
2795
2822
|
};
|
2796
2823
|
/** @internal */
|
2797
2824
|
const linkTo = (to, targetBlank = true) => () => {
|
2825
|
+
const { target } = getActionRunnerContext() ?? {};
|
2798
2826
|
async function sleep(ms) {
|
2799
2827
|
return new Promise(resolve => setTimeout(resolve, ms));
|
2800
2828
|
}
|
@@ -2803,11 +2831,12 @@ const linkTo = (to, targetBlank = true) => () => {
|
|
2803
2831
|
// # edge.js の retransmitter が送るのを待つ
|
2804
2832
|
await sleep(450);
|
2805
2833
|
}
|
2806
|
-
|
2834
|
+
const isRequiredWindowOpen = target === 'native' || targetBlank;
|
2835
|
+
if (isRequiredWindowOpen) {
|
2807
2836
|
window.open(to);
|
2808
2837
|
}
|
2809
2838
|
Promise.race([_send(), sleep(650)]).then(() => {
|
2810
|
-
if (!
|
2839
|
+
if (!isRequiredWindowOpen) {
|
2811
2840
|
location.href = to;
|
2812
2841
|
}
|
2813
2842
|
});
|
package/dist/index.es.d.ts
CHANGED
@@ -152,6 +152,10 @@ interface ActionOptions<Props, Variables, VariablesQuery> {
|
|
152
152
|
karteTemplate?: {
|
153
153
|
[key: string]: any;
|
154
154
|
};
|
155
|
+
/**
|
156
|
+
* アクション実行時のコンテキスト
|
157
|
+
*/
|
158
|
+
context: ActionRunnerContext;
|
155
159
|
}
|
156
160
|
/**
|
157
161
|
* KARTE のシステム設定情報
|
@@ -174,6 +178,13 @@ type ActionHookLog = {
|
|
174
178
|
name: string;
|
175
179
|
values?: any;
|
176
180
|
};
|
181
|
+
/**
|
182
|
+
* アクション実行時のコンテキスト
|
183
|
+
*/
|
184
|
+
type ActionRunnerContext = {
|
185
|
+
api_key: string;
|
186
|
+
target?: "web" | "native";
|
187
|
+
};
|
177
188
|
type ActionTableResult = number | string | boolean | Date | null | undefined;
|
178
189
|
type ActionTableQueryParam = string | number | boolean | Date;
|
179
190
|
type ActionTableQueryParams = {
|
@@ -1582,6 +1593,10 @@ declare namespace widget {
|
|
1582
1593
|
karteTemplate?: {
|
1583
1594
|
[key: string]: any;
|
1584
1595
|
};
|
1596
|
+
/**
|
1597
|
+
* アクション実行時のコンテキスト
|
1598
|
+
*/
|
1599
|
+
context: ActionRunnerContext;
|
1585
1600
|
}
|
1586
1601
|
/**
|
1587
1602
|
* KARTE のシステム設定情報
|
@@ -1604,6 +1619,13 @@ declare namespace widget {
|
|
1604
1619
|
name: string;
|
1605
1620
|
values?: any;
|
1606
1621
|
};
|
1622
|
+
/**
|
1623
|
+
* アクション実行時のコンテキスト
|
1624
|
+
*/
|
1625
|
+
type ActionRunnerContext = {
|
1626
|
+
api_key: string;
|
1627
|
+
target?: "web" | "native";
|
1628
|
+
};
|
1607
1629
|
type ActionTableResult = number | string | boolean | Date | null | undefined;
|
1608
1630
|
type ActionTableQueryParam = string | number | boolean | Date;
|
1609
1631
|
type ActionTableQueryParams = {
|
package/dist/index.es.js
CHANGED
@@ -635,6 +635,28 @@ function getSystem() {
|
|
635
635
|
function setSystem(config) {
|
636
636
|
system.set(config);
|
637
637
|
}
|
638
|
+
/**
|
639
|
+
* アクション実行時のコンテキストを保存するストア
|
640
|
+
*
|
641
|
+
* @internal
|
642
|
+
*/
|
643
|
+
const actionRunnerContext = writable(null);
|
644
|
+
/**
|
645
|
+
* アクション実行時のコンテキストを取得する
|
646
|
+
*
|
647
|
+
* @internal
|
648
|
+
*/
|
649
|
+
function getActionRunnerContext() {
|
650
|
+
return get(actionRunnerContext);
|
651
|
+
}
|
652
|
+
/**
|
653
|
+
* アクション実行時のコンテキストを保存する
|
654
|
+
*
|
655
|
+
* @internal
|
656
|
+
*/
|
657
|
+
function setActionRunnerContext(value) {
|
658
|
+
return actionRunnerContext.set(value);
|
659
|
+
}
|
638
660
|
/**
|
639
661
|
* Store to handle current state ID
|
640
662
|
*
|
@@ -1569,6 +1591,7 @@ function createModal(App, options = {
|
|
1569
1591
|
variables: {},
|
1570
1592
|
localVariablesQuery: undefined,
|
1571
1593
|
karteTemplate: {},
|
1594
|
+
context: { api_key: '' },
|
1572
1595
|
}) {
|
1573
1596
|
let app = null;
|
1574
1597
|
const data = {
|
@@ -1795,6 +1818,7 @@ function createApp(App, options = {
|
|
1795
1818
|
props: {},
|
1796
1819
|
variables: {},
|
1797
1820
|
localVariablesQuery: undefined,
|
1821
|
+
context: { api_key: '' },
|
1798
1822
|
}) {
|
1799
1823
|
let app = null;
|
1800
1824
|
const close = () => {
|
@@ -1874,6 +1898,7 @@ async function runScript$1(options = {
|
|
1874
1898
|
variables: {},
|
1875
1899
|
localVariablesQuery: undefined,
|
1876
1900
|
karteTemplate: {},
|
1901
|
+
context: { api_key: '' },
|
1877
1902
|
}) {
|
1878
1903
|
if (!options.onCreate)
|
1879
1904
|
return;
|
@@ -1984,6 +2009,7 @@ function create(App, options = {
|
|
1984
2009
|
variables: {},
|
1985
2010
|
localVariablesQuery: undefined,
|
1986
2011
|
karteTemplate: {},
|
2012
|
+
context: { api_key: '' },
|
1987
2013
|
}) {
|
1988
2014
|
const data = {
|
1989
2015
|
...options.props,
|
@@ -2015,6 +2041,7 @@ function create(App, options = {
|
|
2015
2041
|
shortenId: data.shorten_id || null,
|
2016
2042
|
campaignId: data.campaign_id || null,
|
2017
2043
|
});
|
2044
|
+
setActionRunnerContext(options.context);
|
2018
2045
|
window.addEventListener(ACTION_DESTROY_EVENT, handleDestroy);
|
2019
2046
|
window.addEventListener('beforeunload', dispatchDestroyEvent, false);
|
2020
2047
|
let modalCleanup = NOOP;
|
@@ -2819,6 +2846,7 @@ const moveTo = (to) => () => {
|
|
2819
2846
|
};
|
2820
2847
|
/** @internal */
|
2821
2848
|
const linkTo = (to, targetBlank = true) => () => {
|
2849
|
+
const { target } = getActionRunnerContext() ?? {};
|
2822
2850
|
async function sleep(ms) {
|
2823
2851
|
return new Promise(resolve => setTimeout(resolve, ms));
|
2824
2852
|
}
|
@@ -2827,11 +2855,12 @@ const linkTo = (to, targetBlank = true) => () => {
|
|
2827
2855
|
// # edge.js の retransmitter が送るのを待つ
|
2828
2856
|
await sleep(450);
|
2829
2857
|
}
|
2830
|
-
|
2858
|
+
const isRequiredWindowOpen = target === 'native' || targetBlank;
|
2859
|
+
if (isRequiredWindowOpen) {
|
2831
2860
|
window.open(to);
|
2832
2861
|
}
|
2833
2862
|
Promise.race([_send(), sleep(650)]).then(() => {
|
2834
|
-
if (!
|
2863
|
+
if (!isRequiredWindowOpen) {
|
2835
2864
|
location.href = to;
|
2836
2865
|
}
|
2837
2866
|
});
|
package/dist/templates.cjs.js
CHANGED
@@ -100,7 +100,7 @@ import { props, localVariablesQuery, karteTemplate } from './gen';
|
|
100
100
|
import App from './App.svelte';
|
101
101
|
import onCreate from './customScript';
|
102
102
|
${script}
|
103
|
-
const action = (options: { send: Send; publish: Publish, props: Props; variables: Variables }): KarteAction => {
|
103
|
+
const action = (options: { send: Send; publish: Publish, props: Props; variables: Variables, context: any }): KarteAction => {
|
104
104
|
return create(App, {
|
105
105
|
props,
|
106
106
|
send: options.send,
|
@@ -109,6 +109,7 @@ const action = (options: { send: Send; publish: Publish, props: Props; variables
|
|
109
109
|
localVariablesQuery,
|
110
110
|
karteTemplate,
|
111
111
|
onCreate,
|
112
|
+
context: options.context,
|
112
113
|
});
|
113
114
|
};
|
114
115
|
|
package/dist/templates.js
CHANGED
@@ -98,7 +98,7 @@ import { props, localVariablesQuery, karteTemplate } from './gen';
|
|
98
98
|
import App from './App.svelte';
|
99
99
|
import onCreate from './customScript';
|
100
100
|
${script}
|
101
|
-
const action = (options: { send: Send; publish: Publish, props: Props; variables: Variables }): KarteAction => {
|
101
|
+
const action = (options: { send: Send; publish: Publish, props: Props; variables: Variables, context: any }): KarteAction => {
|
102
102
|
return create(App, {
|
103
103
|
props,
|
104
104
|
send: options.send,
|
@@ -107,6 +107,7 @@ const action = (options: { send: Send; publish: Publish, props: Props; variables
|
|
107
107
|
localVariablesQuery,
|
108
108
|
karteTemplate,
|
109
109
|
onCreate,
|
110
|
+
context: options.context,
|
110
111
|
});
|
111
112
|
};
|
112
113
|
|