@dimer47/capacitor-plugin-asam 2.0.0 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{CapacitorPluginAsam.podspec → Dimer47CapacitorPluginAsam.podspec} +1 -1
- package/README.md +15 -0
- package/dist/docs.json +15 -0
- package/dist/esm/android.d.ts +3 -0
- package/dist/esm/android.js +3 -0
- package/dist/esm/android.js.map +1 -1
- package/dist/esm/definitions.d.ts +9 -0
- package/dist/esm/definitions.js.map +1 -1
- package/dist/esm/web.d.ts +3 -0
- package/dist/esm/web.js +3 -0
- package/dist/esm/web.js.map +1 -1
- package/dist/plugin.cjs.js +6 -0
- package/dist/plugin.cjs.js.map +1 -1
- package/dist/plugin.js +6 -0
- package/dist/plugin.js.map +1 -1
- package/ios/Plugin/Asam.swift +20 -0
- package/ios/Plugin/AsamPlugin.m +1 -0
- package/ios/Plugin/AsamPlugin.swift +8 -0
- package/package.json +2 -2
|
@@ -3,7 +3,7 @@ require 'json'
|
|
|
3
3
|
package = JSON.parse(File.read(File.join(__dir__, 'package.json')))
|
|
4
4
|
|
|
5
5
|
Pod::Spec.new do |s|
|
|
6
|
-
s.name = '
|
|
6
|
+
s.name = 'Dimer47CapacitorPluginAsam'
|
|
7
7
|
s.version = package['version']
|
|
8
8
|
s.summary = package['description']
|
|
9
9
|
s.license = package['license']
|
package/README.md
CHANGED
|
@@ -85,6 +85,7 @@ if (!r.success)
|
|
|
85
85
|
* [`enableASAM()`](#enableasam)
|
|
86
86
|
* [`disableASAM()`](#disableasam)
|
|
87
87
|
* [`isASAMEnabled()`](#isasamenabled)
|
|
88
|
+
* [`isSupervised()`](#issupervised)
|
|
88
89
|
|
|
89
90
|
</docgen-index>
|
|
90
91
|
|
|
@@ -148,6 +149,20 @@ Check whether Autonomous Single App Mode (ASAM) is currently active on the devic
|
|
|
148
149
|
|
|
149
150
|
--------------------
|
|
150
151
|
|
|
152
|
+
|
|
153
|
+
### isSupervised()
|
|
154
|
+
|
|
155
|
+
```typescript
|
|
156
|
+
isSupervised() => Promise<{ supervised: boolean; }>
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Check whether the device is in supervised mode.
|
|
160
|
+
Only supervised iOS devices can use ASAM.
|
|
161
|
+
|
|
162
|
+
**Returns:** <code>Promise<{ supervised: boolean; }></code>
|
|
163
|
+
|
|
164
|
+
--------------------
|
|
165
|
+
|
|
151
166
|
</docgen-api>
|
|
152
167
|
|
|
153
168
|
## 🧪 Testing
|
package/dist/docs.json
CHANGED
|
@@ -74,6 +74,21 @@
|
|
|
74
74
|
"docs": "Check whether Autonomous Single App Mode (ASAM) is currently active on the device.",
|
|
75
75
|
"complexTypes": [],
|
|
76
76
|
"slug": "isasamenabled"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"name": "isSupervised",
|
|
80
|
+
"signature": "() => Promise<{ supervised: boolean; }>",
|
|
81
|
+
"parameters": [],
|
|
82
|
+
"returns": "Promise<{ supervised: boolean; }>",
|
|
83
|
+
"tags": [
|
|
84
|
+
{
|
|
85
|
+
"name": "returns",
|
|
86
|
+
"text": "`{ supervised: true }` if the device is supervised."
|
|
87
|
+
}
|
|
88
|
+
],
|
|
89
|
+
"docs": "Check whether the device is in supervised mode.\nOnly supervised iOS devices can use ASAM.",
|
|
90
|
+
"complexTypes": [],
|
|
91
|
+
"slug": "issupervised"
|
|
77
92
|
}
|
|
78
93
|
],
|
|
79
94
|
"properties": []
|
package/dist/esm/android.d.ts
CHANGED
package/dist/esm/android.js
CHANGED
|
@@ -13,5 +13,8 @@ export class AsamAndroid extends WebPlugin {
|
|
|
13
13
|
isASAMEnabled() {
|
|
14
14
|
throw this.unimplemented('isASAMEnabled is not implemented on web.');
|
|
15
15
|
}
|
|
16
|
+
isSupervised() {
|
|
17
|
+
return Promise.resolve({ supervised: false });
|
|
18
|
+
}
|
|
16
19
|
}
|
|
17
20
|
//# sourceMappingURL=android.js.map
|
package/dist/esm/android.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"android.js","sourceRoot":"","sources":["../../src/android.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,MAAM,OAAO,WAAY,SAAQ,SAAS;IACxC,6DAA6D;IAC7D,OAAO,CAAC,QAA6B;QACnC,MAAM,IAAI,CAAC,aAAa,CAAC,oCAAoC,CAAC,CAAC;IACjE,CAAC;IAED,UAAU;QACR,MAAM,IAAI,CAAC,aAAa,CAAC,uCAAuC,CAAC,CAAC;IACpE,CAAC;IAED,WAAW;QACT,MAAM,IAAI,CAAC,aAAa,CAAC,wCAAwC,CAAC,CAAC;IACrE,CAAC;IAED,aAAa;QACX,MAAM,IAAI,CAAC,aAAa,CAAC,0CAA0C,CAAC,CAAC;IACvE,CAAC;CACF","sourcesContent":["import { WebPlugin } from '@capacitor/core';\n\nimport type { AsamPlugin } from './definitions';\n\nexport class AsamAndroid extends WebPlugin implements AsamPlugin {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setASAM(_options: { enable: boolean }): Promise<{ success: boolean }> {\n throw this.unimplemented('setASAM is not implemented on web.');\n }\n\n enableASAM(): Promise<{ success: boolean }> {\n throw this.unimplemented('enableASAM is not implemented on web.');\n }\n\n disableASAM(): Promise<{ success: boolean }> {\n throw this.unimplemented('disableASAM is not implemented on web.');\n }\n\n isASAMEnabled(): Promise<{ enabled: boolean }> {\n throw this.unimplemented('isASAMEnabled is not implemented on web.');\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"android.js","sourceRoot":"","sources":["../../src/android.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,MAAM,OAAO,WAAY,SAAQ,SAAS;IACxC,6DAA6D;IAC7D,OAAO,CAAC,QAA6B;QACnC,MAAM,IAAI,CAAC,aAAa,CAAC,oCAAoC,CAAC,CAAC;IACjE,CAAC;IAED,UAAU;QACR,MAAM,IAAI,CAAC,aAAa,CAAC,uCAAuC,CAAC,CAAC;IACpE,CAAC;IAED,WAAW;QACT,MAAM,IAAI,CAAC,aAAa,CAAC,wCAAwC,CAAC,CAAC;IACrE,CAAC;IAED,aAAa;QACX,MAAM,IAAI,CAAC,aAAa,CAAC,0CAA0C,CAAC,CAAC;IACvE,CAAC;IAED,YAAY;QACV,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;CACF","sourcesContent":["import { WebPlugin } from '@capacitor/core';\n\nimport type { AsamPlugin } from './definitions';\n\nexport class AsamAndroid extends WebPlugin implements AsamPlugin {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setASAM(_options: { enable: boolean }): Promise<{ success: boolean }> {\n throw this.unimplemented('setASAM is not implemented on web.');\n }\n\n enableASAM(): Promise<{ success: boolean }> {\n throw this.unimplemented('enableASAM is not implemented on web.');\n }\n\n disableASAM(): Promise<{ success: boolean }> {\n throw this.unimplemented('disableASAM is not implemented on web.');\n }\n\n isASAMEnabled(): Promise<{ enabled: boolean }> {\n throw this.unimplemented('isASAMEnabled is not implemented on web.');\n }\n\n isSupervised(): Promise<{ supervised: boolean }> {\n return Promise.resolve({ supervised: false });\n }\n}\n"]}
|
|
@@ -36,4 +36,13 @@ export interface AsamPlugin {
|
|
|
36
36
|
isASAMEnabled(): Promise<{
|
|
37
37
|
enabled: boolean;
|
|
38
38
|
}>;
|
|
39
|
+
/**
|
|
40
|
+
* Check whether the device is in supervised mode.
|
|
41
|
+
* Only supervised iOS devices can use ASAM.
|
|
42
|
+
*
|
|
43
|
+
* @returns `{ supervised: true }` if the device is supervised.
|
|
44
|
+
*/
|
|
45
|
+
isSupervised(): Promise<{
|
|
46
|
+
supervised: boolean;
|
|
47
|
+
}>;
|
|
39
48
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":"","sourcesContent":["export interface AsamPlugin {\n /**\n * Enable or disable Autonomous Single App Mode (ASAM) based on the `enable` parameter.\n *\n * @param options - `enable: true` to activate ASAM, `false` to deactivate.\n * @returns `{ success: true }` if the operation succeeded, `{ success: false }` otherwise.\n */\n setASAM(options: { enable: boolean }): Promise<{ success: boolean }>;\n\n /**\n * Enable Autonomous Single App Mode (ASAM) on the device.\n * Shortcut for `setASAM({ enable: true })`.\n *\n * @returns `{ success: true }` if ASAM was enabled successfully.\n */\n enableASAM(): Promise<{ success: boolean }>;\n\n /**\n * Disable Autonomous Single App Mode (ASAM) on the device.\n * Shortcut for `setASAM({ enable: false })`.\n *\n * @returns `{ success: true }` if ASAM was disabled successfully.\n */\n disableASAM(): Promise<{ success: boolean }>;\n\n /**\n * Check whether Autonomous Single App Mode (ASAM) is currently active on the device.\n *\n * @returns `{ enabled: true }` if ASAM / Guided Access is currently active.\n */\n isASAMEnabled(): Promise<{ enabled: boolean }>;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":"","sourcesContent":["export interface AsamPlugin {\n /**\n * Enable or disable Autonomous Single App Mode (ASAM) based on the `enable` parameter.\n *\n * @param options - `enable: true` to activate ASAM, `false` to deactivate.\n * @returns `{ success: true }` if the operation succeeded, `{ success: false }` otherwise.\n */\n setASAM(options: { enable: boolean }): Promise<{ success: boolean }>;\n\n /**\n * Enable Autonomous Single App Mode (ASAM) on the device.\n * Shortcut for `setASAM({ enable: true })`.\n *\n * @returns `{ success: true }` if ASAM was enabled successfully.\n */\n enableASAM(): Promise<{ success: boolean }>;\n\n /**\n * Disable Autonomous Single App Mode (ASAM) on the device.\n * Shortcut for `setASAM({ enable: false })`.\n *\n * @returns `{ success: true }` if ASAM was disabled successfully.\n */\n disableASAM(): Promise<{ success: boolean }>;\n\n /**\n * Check whether Autonomous Single App Mode (ASAM) is currently active on the device.\n *\n * @returns `{ enabled: true }` if ASAM / Guided Access is currently active.\n */\n isASAMEnabled(): Promise<{ enabled: boolean }>;\n\n /**\n * Check whether the device is in supervised mode.\n * Only supervised iOS devices can use ASAM.\n *\n * @returns `{ supervised: true }` if the device is supervised.\n */\n isSupervised(): Promise<{ supervised: boolean }>;\n}\n"]}
|
package/dist/esm/web.d.ts
CHANGED
package/dist/esm/web.js
CHANGED
package/dist/esm/web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,MAAM,OAAO,OAAQ,SAAQ,SAAS;IACpC,6DAA6D;IAC7D,OAAO,CAAC,QAA6B;QACnC,MAAM,IAAI,CAAC,WAAW,CAAC,kCAAkC,CAAC,CAAC;IAC7D,CAAC;IAED,UAAU;QACR,MAAM,IAAI,CAAC,WAAW,CAAC,qCAAqC,CAAC,CAAC;IAChE,CAAC;IAED,WAAW;QACT,MAAM,IAAI,CAAC,WAAW,CAAC,sCAAsC,CAAC,CAAC;IACjE,CAAC;IAED,aAAa;QACX,MAAM,IAAI,CAAC,WAAW,CAAC,wCAAwC,CAAC,CAAC;IACnE,CAAC;CACF","sourcesContent":["import { WebPlugin } from '@capacitor/core';\n\nimport type { AsamPlugin } from './definitions';\n\nexport class AsamWeb extends WebPlugin implements AsamPlugin {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setASAM(_options: { enable: boolean }): Promise<{ success: boolean }> {\n throw this.unavailable('setASAM is not available on web.');\n }\n\n enableASAM(): Promise<{ success: boolean }> {\n throw this.unavailable('enableASAM is not available on web.');\n }\n\n disableASAM(): Promise<{ success: boolean }> {\n throw this.unavailable('disableASAM is not available on web.');\n }\n\n isASAMEnabled(): Promise<{ enabled: boolean }> {\n throw this.unavailable('isASAMEnabled is not available on web.');\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,MAAM,OAAO,OAAQ,SAAQ,SAAS;IACpC,6DAA6D;IAC7D,OAAO,CAAC,QAA6B;QACnC,MAAM,IAAI,CAAC,WAAW,CAAC,kCAAkC,CAAC,CAAC;IAC7D,CAAC;IAED,UAAU;QACR,MAAM,IAAI,CAAC,WAAW,CAAC,qCAAqC,CAAC,CAAC;IAChE,CAAC;IAED,WAAW;QACT,MAAM,IAAI,CAAC,WAAW,CAAC,sCAAsC,CAAC,CAAC;IACjE,CAAC;IAED,aAAa;QACX,MAAM,IAAI,CAAC,WAAW,CAAC,wCAAwC,CAAC,CAAC;IACnE,CAAC;IAED,YAAY;QACV,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;CACF","sourcesContent":["import { WebPlugin } from '@capacitor/core';\n\nimport type { AsamPlugin } from './definitions';\n\nexport class AsamWeb extends WebPlugin implements AsamPlugin {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setASAM(_options: { enable: boolean }): Promise<{ success: boolean }> {\n throw this.unavailable('setASAM is not available on web.');\n }\n\n enableASAM(): Promise<{ success: boolean }> {\n throw this.unavailable('enableASAM is not available on web.');\n }\n\n disableASAM(): Promise<{ success: boolean }> {\n throw this.unavailable('disableASAM is not available on web.');\n }\n\n isASAMEnabled(): Promise<{ enabled: boolean }> {\n throw this.unavailable('isASAMEnabled is not available on web.');\n }\n\n isSupervised(): Promise<{ supervised: boolean }> {\n return Promise.resolve({ supervised: false });\n }\n}\n"]}
|
package/dist/plugin.cjs.js
CHANGED
|
@@ -23,6 +23,9 @@ class AsamWeb extends core.WebPlugin {
|
|
|
23
23
|
isASAMEnabled() {
|
|
24
24
|
throw this.unavailable('isASAMEnabled is not available on web.');
|
|
25
25
|
}
|
|
26
|
+
isSupervised() {
|
|
27
|
+
return Promise.resolve({ supervised: false });
|
|
28
|
+
}
|
|
26
29
|
}
|
|
27
30
|
|
|
28
31
|
var web = /*#__PURE__*/Object.freeze({
|
|
@@ -44,6 +47,9 @@ class AsamAndroid extends core.WebPlugin {
|
|
|
44
47
|
isASAMEnabled() {
|
|
45
48
|
throw this.unimplemented('isASAMEnabled is not implemented on web.');
|
|
46
49
|
}
|
|
50
|
+
isSupervised() {
|
|
51
|
+
return Promise.resolve({ supervised: false });
|
|
52
|
+
}
|
|
47
53
|
}
|
|
48
54
|
|
|
49
55
|
var android = /*#__PURE__*/Object.freeze({
|
package/dist/plugin.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.cjs.js","sources":["esm/index.js","esm/web.js","esm/android.js"],"sourcesContent":["import { registerPlugin } from '@capacitor/core';\nconst Asam = registerPlugin('Asam', {\n web: () => import('./web').then(m => new m.AsamWeb()),\n android: () => import('./android').then(m => new m.AsamAndroid()),\n});\nexport * from './definitions';\nexport { Asam };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nexport class AsamWeb extends WebPlugin {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setASAM(_options) {\n throw this.unavailable('setASAM is not available on web.');\n }\n enableASAM() {\n throw this.unavailable('enableASAM is not available on web.');\n }\n disableASAM() {\n throw this.unavailable('disableASAM is not available on web.');\n }\n isASAMEnabled() {\n throw this.unavailable('isASAMEnabled is not available on web.');\n }\n}\n//# sourceMappingURL=web.js.map","import { WebPlugin } from '@capacitor/core';\nexport class AsamAndroid extends WebPlugin {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setASAM(_options) {\n throw this.unimplemented('setASAM is not implemented on web.');\n }\n enableASAM() {\n throw this.unimplemented('enableASAM is not implemented on web.');\n }\n disableASAM() {\n throw this.unimplemented('disableASAM is not implemented on web.');\n }\n isASAMEnabled() {\n throw this.unimplemented('isASAMEnabled is not implemented on web.');\n }\n}\n//# sourceMappingURL=android.js.map"],"names":["registerPlugin","WebPlugin"],"mappings":";;;;;;AACK,MAAC,IAAI,GAAGA,mBAAc,CAAC,MAAM,EAAE;AACpC,IAAI,GAAG,EAAE,MAAM,mDAAe,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;AACzD,IAAI,OAAO,EAAE,MAAM,uDAAmB,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;AACrE,CAAC;;ACHM,MAAM,OAAO,SAASC,cAAS,CAAC;AACvC;AACA,IAAI,OAAO,CAAC,QAAQ,EAAE;AACtB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,kCAAkC,CAAC,CAAC;AACnE,KAAK;AACL,IAAI,UAAU,GAAG;AACjB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,qCAAqC,CAAC,CAAC;AACtE,KAAK;AACL,IAAI,WAAW,GAAG;AAClB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,sCAAsC,CAAC,CAAC;AACvE,KAAK;AACL,IAAI,aAAa,GAAG;AACpB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,wCAAwC,CAAC,CAAC;AACzE,KAAK;AACL;;;;;;;
|
|
1
|
+
{"version":3,"file":"plugin.cjs.js","sources":["esm/index.js","esm/web.js","esm/android.js"],"sourcesContent":["import { registerPlugin } from '@capacitor/core';\nconst Asam = registerPlugin('Asam', {\n web: () => import('./web').then(m => new m.AsamWeb()),\n android: () => import('./android').then(m => new m.AsamAndroid()),\n});\nexport * from './definitions';\nexport { Asam };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nexport class AsamWeb extends WebPlugin {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setASAM(_options) {\n throw this.unavailable('setASAM is not available on web.');\n }\n enableASAM() {\n throw this.unavailable('enableASAM is not available on web.');\n }\n disableASAM() {\n throw this.unavailable('disableASAM is not available on web.');\n }\n isASAMEnabled() {\n throw this.unavailable('isASAMEnabled is not available on web.');\n }\n isSupervised() {\n return Promise.resolve({ supervised: false });\n }\n}\n//# sourceMappingURL=web.js.map","import { WebPlugin } from '@capacitor/core';\nexport class AsamAndroid extends WebPlugin {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setASAM(_options) {\n throw this.unimplemented('setASAM is not implemented on web.');\n }\n enableASAM() {\n throw this.unimplemented('enableASAM is not implemented on web.');\n }\n disableASAM() {\n throw this.unimplemented('disableASAM is not implemented on web.');\n }\n isASAMEnabled() {\n throw this.unimplemented('isASAMEnabled is not implemented on web.');\n }\n isSupervised() {\n return Promise.resolve({ supervised: false });\n }\n}\n//# sourceMappingURL=android.js.map"],"names":["registerPlugin","WebPlugin"],"mappings":";;;;;;AACK,MAAC,IAAI,GAAGA,mBAAc,CAAC,MAAM,EAAE;AACpC,IAAI,GAAG,EAAE,MAAM,mDAAe,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;AACzD,IAAI,OAAO,EAAE,MAAM,uDAAmB,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;AACrE,CAAC;;ACHM,MAAM,OAAO,SAASC,cAAS,CAAC;AACvC;AACA,IAAI,OAAO,CAAC,QAAQ,EAAE;AACtB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,kCAAkC,CAAC,CAAC;AACnE,KAAK;AACL,IAAI,UAAU,GAAG;AACjB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,qCAAqC,CAAC,CAAC;AACtE,KAAK;AACL,IAAI,WAAW,GAAG;AAClB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,sCAAsC,CAAC,CAAC;AACvE,KAAK;AACL,IAAI,aAAa,GAAG;AACpB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,wCAAwC,CAAC,CAAC;AACzE,KAAK;AACL,IAAI,YAAY,GAAG;AACnB,QAAQ,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;AACtD,KAAK;AACL;;;;;;;ACjBO,MAAM,WAAW,SAASA,cAAS,CAAC;AAC3C;AACA,IAAI,OAAO,CAAC,QAAQ,EAAE;AACtB,QAAQ,MAAM,IAAI,CAAC,aAAa,CAAC,oCAAoC,CAAC,CAAC;AACvE,KAAK;AACL,IAAI,UAAU,GAAG;AACjB,QAAQ,MAAM,IAAI,CAAC,aAAa,CAAC,uCAAuC,CAAC,CAAC;AAC1E,KAAK;AACL,IAAI,WAAW,GAAG;AAClB,QAAQ,MAAM,IAAI,CAAC,aAAa,CAAC,wCAAwC,CAAC,CAAC;AAC3E,KAAK;AACL,IAAI,aAAa,GAAG;AACpB,QAAQ,MAAM,IAAI,CAAC,aAAa,CAAC,0CAA0C,CAAC,CAAC;AAC7E,KAAK;AACL,IAAI,YAAY,GAAG;AACnB,QAAQ,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;AACtD,KAAK;AACL;;;;;;;;;"}
|
package/dist/plugin.js
CHANGED
|
@@ -20,6 +20,9 @@ var capacitorAsam = (function (exports, core) {
|
|
|
20
20
|
isASAMEnabled() {
|
|
21
21
|
throw this.unavailable('isASAMEnabled is not available on web.');
|
|
22
22
|
}
|
|
23
|
+
isSupervised() {
|
|
24
|
+
return Promise.resolve({ supervised: false });
|
|
25
|
+
}
|
|
23
26
|
}
|
|
24
27
|
|
|
25
28
|
var web = /*#__PURE__*/Object.freeze({
|
|
@@ -41,6 +44,9 @@ var capacitorAsam = (function (exports, core) {
|
|
|
41
44
|
isASAMEnabled() {
|
|
42
45
|
throw this.unimplemented('isASAMEnabled is not implemented on web.');
|
|
43
46
|
}
|
|
47
|
+
isSupervised() {
|
|
48
|
+
return Promise.resolve({ supervised: false });
|
|
49
|
+
}
|
|
44
50
|
}
|
|
45
51
|
|
|
46
52
|
var android = /*#__PURE__*/Object.freeze({
|
package/dist/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sources":["esm/index.js","esm/web.js","esm/android.js"],"sourcesContent":["import { registerPlugin } from '@capacitor/core';\nconst Asam = registerPlugin('Asam', {\n web: () => import('./web').then(m => new m.AsamWeb()),\n android: () => import('./android').then(m => new m.AsamAndroid()),\n});\nexport * from './definitions';\nexport { Asam };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nexport class AsamWeb extends WebPlugin {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setASAM(_options) {\n throw this.unavailable('setASAM is not available on web.');\n }\n enableASAM() {\n throw this.unavailable('enableASAM is not available on web.');\n }\n disableASAM() {\n throw this.unavailable('disableASAM is not available on web.');\n }\n isASAMEnabled() {\n throw this.unavailable('isASAMEnabled is not available on web.');\n }\n}\n//# sourceMappingURL=web.js.map","import { WebPlugin } from '@capacitor/core';\nexport class AsamAndroid extends WebPlugin {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setASAM(_options) {\n throw this.unimplemented('setASAM is not implemented on web.');\n }\n enableASAM() {\n throw this.unimplemented('enableASAM is not implemented on web.');\n }\n disableASAM() {\n throw this.unimplemented('disableASAM is not implemented on web.');\n }\n isASAMEnabled() {\n throw this.unimplemented('isASAMEnabled is not implemented on web.');\n }\n}\n//# sourceMappingURL=android.js.map"],"names":["registerPlugin","WebPlugin"],"mappings":";;;AACK,UAAC,IAAI,GAAGA,mBAAc,CAAC,MAAM,EAAE;IACpC,IAAI,GAAG,EAAE,MAAM,mDAAe,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IACzD,IAAI,OAAO,EAAE,MAAM,uDAAmB,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IACrE,CAAC;;ICHM,MAAM,OAAO,SAASC,cAAS,CAAC;IACvC;IACA,IAAI,OAAO,CAAC,QAAQ,EAAE;IACtB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,kCAAkC,CAAC,CAAC;IACnE,KAAK;IACL,IAAI,UAAU,GAAG;IACjB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,qCAAqC,CAAC,CAAC;IACtE,KAAK;IACL,IAAI,WAAW,GAAG;IAClB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,sCAAsC,CAAC,CAAC;IACvE,KAAK;IACL,IAAI,aAAa,GAAG;IACpB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,wCAAwC,CAAC,CAAC;IACzE,KAAK;IACL;;;;;;;
|
|
1
|
+
{"version":3,"file":"plugin.js","sources":["esm/index.js","esm/web.js","esm/android.js"],"sourcesContent":["import { registerPlugin } from '@capacitor/core';\nconst Asam = registerPlugin('Asam', {\n web: () => import('./web').then(m => new m.AsamWeb()),\n android: () => import('./android').then(m => new m.AsamAndroid()),\n});\nexport * from './definitions';\nexport { Asam };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nexport class AsamWeb extends WebPlugin {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setASAM(_options) {\n throw this.unavailable('setASAM is not available on web.');\n }\n enableASAM() {\n throw this.unavailable('enableASAM is not available on web.');\n }\n disableASAM() {\n throw this.unavailable('disableASAM is not available on web.');\n }\n isASAMEnabled() {\n throw this.unavailable('isASAMEnabled is not available on web.');\n }\n isSupervised() {\n return Promise.resolve({ supervised: false });\n }\n}\n//# sourceMappingURL=web.js.map","import { WebPlugin } from '@capacitor/core';\nexport class AsamAndroid extends WebPlugin {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n setASAM(_options) {\n throw this.unimplemented('setASAM is not implemented on web.');\n }\n enableASAM() {\n throw this.unimplemented('enableASAM is not implemented on web.');\n }\n disableASAM() {\n throw this.unimplemented('disableASAM is not implemented on web.');\n }\n isASAMEnabled() {\n throw this.unimplemented('isASAMEnabled is not implemented on web.');\n }\n isSupervised() {\n return Promise.resolve({ supervised: false });\n }\n}\n//# sourceMappingURL=android.js.map"],"names":["registerPlugin","WebPlugin"],"mappings":";;;AACK,UAAC,IAAI,GAAGA,mBAAc,CAAC,MAAM,EAAE;IACpC,IAAI,GAAG,EAAE,MAAM,mDAAe,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IACzD,IAAI,OAAO,EAAE,MAAM,uDAAmB,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IACrE,CAAC;;ICHM,MAAM,OAAO,SAASC,cAAS,CAAC;IACvC;IACA,IAAI,OAAO,CAAC,QAAQ,EAAE;IACtB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,kCAAkC,CAAC,CAAC;IACnE,KAAK;IACL,IAAI,UAAU,GAAG;IACjB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,qCAAqC,CAAC,CAAC;IACtE,KAAK;IACL,IAAI,WAAW,GAAG;IAClB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,sCAAsC,CAAC,CAAC;IACvE,KAAK;IACL,IAAI,aAAa,GAAG;IACpB,QAAQ,MAAM,IAAI,CAAC,WAAW,CAAC,wCAAwC,CAAC,CAAC;IACzE,KAAK;IACL,IAAI,YAAY,GAAG;IACnB,QAAQ,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,KAAK;IACL;;;;;;;ICjBO,MAAM,WAAW,SAASA,cAAS,CAAC;IAC3C;IACA,IAAI,OAAO,CAAC,QAAQ,EAAE;IACtB,QAAQ,MAAM,IAAI,CAAC,aAAa,CAAC,oCAAoC,CAAC,CAAC;IACvE,KAAK;IACL,IAAI,UAAU,GAAG;IACjB,QAAQ,MAAM,IAAI,CAAC,aAAa,CAAC,uCAAuC,CAAC,CAAC;IAC1E,KAAK;IACL,IAAI,WAAW,GAAG;IAClB,QAAQ,MAAM,IAAI,CAAC,aAAa,CAAC,wCAAwC,CAAC,CAAC;IAC3E,KAAK;IACL,IAAI,aAAa,GAAG;IACpB,QAAQ,MAAM,IAAI,CAAC,aAAa,CAAC,0CAA0C,CAAC,CAAC;IAC7E,KAAK;IACL,IAAI,YAAY,GAAG;IACnB,QAAQ,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IACtD,KAAK;IACL;;;;;;;;;;;;;;;;;"}
|
package/ios/Plugin/Asam.swift
CHANGED
|
@@ -33,6 +33,26 @@ public struct SystemGuidedAccessProvider: GuidedAccessProvider {
|
|
|
33
33
|
self.provider = provider
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
+
/// Check if the device supports ASAM by attempting an enable then disable cycle.
|
|
37
|
+
@objc public func isSupervised(completion: @escaping (Bool) -> Void) {
|
|
38
|
+
Task { @MainActor in
|
|
39
|
+
// If Guided Access is already active, the device is necessarily supervised
|
|
40
|
+
if provider.isGuidedAccessEnabled {
|
|
41
|
+
completion(true)
|
|
42
|
+
return
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// Attempt to enable ASAM — only succeeds on a supervised device
|
|
46
|
+
let canEnable = await provider.requestGuidedAccessSession(enabled: true)
|
|
47
|
+
if canEnable {
|
|
48
|
+
// Disable immediately
|
|
49
|
+
let _ = await provider.requestGuidedAccessSession(enabled: false)
|
|
50
|
+
}
|
|
51
|
+
print("From Native -> isSupervised probe: \(canEnable)")
|
|
52
|
+
completion(canEnable)
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
36
56
|
@objc public func setASAM(_ enable: Bool, completion: @escaping (Bool) -> Void) {
|
|
37
57
|
Task { @MainActor in
|
|
38
58
|
let success = await provider.requestGuidedAccessSession(enabled: enable)
|
package/ios/Plugin/AsamPlugin.m
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dimer47/capacitor-plugin-asam",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.1.1",
|
|
4
4
|
"description": "Easily integrate Autonomous Single App Mode in your app, allowing it to control Single App Mode sessions for focused, distraction-free user experiences. Ideal for educational, testing, or kiosk applications.",
|
|
5
5
|
"main": "dist/plugin.cjs.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"files": [
|
|
10
10
|
"dist/",
|
|
11
11
|
"ios/Plugin/",
|
|
12
|
-
"
|
|
12
|
+
"Dimer47CapacitorPluginAsam.podspec"
|
|
13
13
|
],
|
|
14
14
|
"author": "Dimer47",
|
|
15
15
|
"license": "MIT",
|