expo-app-intents 0.5.0 → 0.5.2

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/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.5.2
4
+
5
+ ### Patch Changes
6
+
7
+ - Ship an agent skill for App Intents setup, invocation handling, entity catalogs, donations, and Spotlight in the npm package. ([#51070](https://github.com/expo/expo/pull/51070) by [@behenate](https://github.com/behenate))
8
+ - Add a `--donations` option and prompt to `npx expo-app-intents init` that scaffolds donation code for the selected examples. ([#50967](https://github.com/expo/expo/pull/50967) by [@behenate](https://github.com/behenate))
9
+ - Updated dependencies. ([#50893](https://github.com/expo/expo/pull/50893), [#51116](https://github.com/expo/expo/pull/51116), [#51007](https://github.com/expo/expo/pull/51007), [#50910](https://github.com/expo/expo/pull/50910), [#50909](https://github.com/expo/expo/pull/50909), [#51108](https://github.com/expo/expo/pull/51108))
10
+ - @expo/ui@58.0.13
11
+
12
+ ## 0.5.1
13
+
14
+ ### Patch Changes
15
+
16
+ - Updated dependencies. ([#50984](https://github.com/expo/expo/pull/50984), [#50927](https://github.com/expo/expo/pull/50927), [#50687](https://github.com/expo/expo/pull/50687))
17
+ - @expo/ui@58.0.12
18
+
3
19
  ## 0.5.0
4
20
 
5
21
  ### Minor Changes
@@ -49,18 +49,19 @@ async function runInitCommand(options) {
49
49
  const interactive = isInteractive();
50
50
  const directory = (0, _init.normalizeDirectory)(options.directory ?? options.dir);
51
51
  printScaffoldIntro(directory);
52
- const { examples, visualIntelligence } = await (0, _init.resolveExamplesAsync)(interactive, options.examples, options.visualIntelligence ?? false);
52
+ const { examples, visualIntelligence, donations } = await (0, _init.resolveExamplesAsync)(interactive, options.examples, options.visualIntelligence ?? false, options.donations ?? false);
53
53
  await (0, _init.runInit)({
54
54
  projectRoot: process.cwd(),
55
55
  directory,
56
56
  examples,
57
57
  visualIntelligence,
58
+ donations,
58
59
  templatesDir: process.env.EXPO_APP_INTENTS_TEMPLATES_DIR ?? _path().default.join(__dirname, '..', '..', TEMPLATES_DIRECTORY_NAME)
59
60
  });
60
61
  }
61
62
  const program = new (_commander()).Command();
62
63
  program.name('expo-app-intents').description('Add Apple App Intents support to Expo apps.');
63
- program.command('init').description('Add Expo App Intents inline-module Swift files to the current Expo app.').option('-d, --dir <directory>', 'Directory for the generated App Intents inline module.').option('--directory <directory>', 'Alias for --dir.').option('--examples <examples...>', 'Example native code to scaffold. Use "all", or choose any of: minimal, counter, ' + 'restaurant, mail.').option('--visual-intelligence', 'Extend the mail example with Spotlight indexing, a Transferable export, and an open intent.').action(runInitCommand);
64
+ program.command('init').description('Add Expo App Intents inline-module Swift files to the current Expo app.').option('-d, --dir <directory>', 'Directory for the generated App Intents inline module.').option('--directory <directory>', 'Alias for --dir.').option('--examples <examples...>', 'Example native code to scaffold. Use "all", or choose any of: minimal, counter, ' + 'restaurant, mail.').option('--visual-intelligence', 'Extend the mail example with Spotlight indexing, a Transferable export, and an open intent.').option('--donations', 'Add native class extensions that let JavaScript donate the intents of the selected examples with ' + 'donateIntentAsync().').action(runInitCommand);
64
65
  program.parseAsync(process.argv).catch((error)=>{
65
66
  console.error(error.message);
66
67
  process.exitCode = 1;
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"sourcesContent":[null],"names":["isInteractive","TEMPLATES_DIRECTORY_NAME","ci","process","env","CI","toLowerCase","EXPO_NONINTERACTIVE","stdin","isTTY","printScaffoldIntro","directory","console","log","runInitCommand","options","interactive","normalizeDirectory","dir","examples","visualIntelligence","resolveExamplesAsync","runInit","projectRoot","cwd","templatesDir","EXPO_APP_INTENTS_TEMPLATES_DIR","path","join","__dirname","program","Command","name","description","command","option","action","parseAsync","argv","catch","error","message","exitCode"],"mappings":";;;;+BAkBgBA;;;eAAAA;;;;yBAlBQ;;;;;;;gEACP;;;;;;sBAEiD;;;;;;AASlE,MAAMC,2BAA2B;AAM1B,SAASD;IACd,MAAME,KAAKC,QAAQC,GAAG,CAACC,EAAE;IACzB,IAAIH,OAAO,OAAOA,IAAII,kBAAkB,QAAQ;QAC9C,OAAO;IACT;IACA,IAAIH,QAAQC,GAAG,CAACG,mBAAmB,EAAE;QACnC,OAAO;IACT;IACA,IAAI,CAACJ,QAAQK,KAAK,CAACC,KAAK,EAAE;QACxB,OAAO;IACT;IACA,OAAO;AACT;AAEA,qFAAqF,GACrF,SAASC,mBAAmBC,SAAiB;IAC3CC,QAAQC,GAAG,CACT,CAAC,oFAAoF,CAAC,GACpF,CAAC,6BAA6B,EAAEF,UAAU,wCAAwC,CAAC;AAEzF;AAEA,eAAeG,eAAeC,OAA2B;IACvD,MAAMC,cAAchB;IACpB,MAAMW,YAAYM,IAAAA,wBAAkB,EAACF,QAAQJ,SAAS,IAAII,QAAQG,GAAG;IACrER,mBAAmBC;IACnB,MAAM,EAAEQ,QAAQ,EAAEC,kBAAkB,EAAE,GAAG,MAAMC,IAAAA,0BAAoB,EACjEL,aACAD,QAAQI,QAAQ,EAChBJ,QAAQK,kBAAkB,IAAI;IAGhC,MAAME,IAAAA,aAAO,EAAC;QACZC,aAAapB,QAAQqB,GAAG;QACxBb;QACAQ;QACAC;QACAK,cACEtB,QAAQC,GAAG,CAACsB,8BAA8B,IAC1CC,eAAI,CAACC,IAAI,CAACC,WAAW,MAAM,MAAM5B;IACrC;AACF;AAEA,MAAM6B,UAAU,IAAIC,CAAAA,YAAM,SAAC;AAE3BD,QAAQE,IAAI,CAAC,oBAAoBC,WAAW,CAAC;AAE7CH,QACGI,OAAO,CAAC,QACRD,WAAW,CAAC,2EACZE,MAAM,CAAC,yBAAyB,0DAChCA,MAAM,CAAC,2BAA2B,oBAClCA,MAAM,CACL,4BACA,qFACE,qBAEHA,MAAM,CACL,yBACA,+FAEDC,MAAM,CAACtB;AAEVgB,QAAQO,UAAU,CAAClC,QAAQmC,IAAI,EAAEC,KAAK,CAAC,CAACC;IACtC5B,QAAQ4B,KAAK,CAACA,MAAMC,OAAO;IAC3BtC,QAAQuC,QAAQ,GAAG;AACrB"}
1
+ {"version":3,"sources":["index.ts"],"sourcesContent":[null],"names":["isInteractive","TEMPLATES_DIRECTORY_NAME","ci","process","env","CI","toLowerCase","EXPO_NONINTERACTIVE","stdin","isTTY","printScaffoldIntro","directory","console","log","runInitCommand","options","interactive","normalizeDirectory","dir","examples","visualIntelligence","donations","resolveExamplesAsync","runInit","projectRoot","cwd","templatesDir","EXPO_APP_INTENTS_TEMPLATES_DIR","path","join","__dirname","program","Command","name","description","command","option","action","parseAsync","argv","catch","error","message","exitCode"],"mappings":";;;;+BAmBgBA;;;eAAAA;;;;yBAnBQ;;;;;;;gEACP;;;;;;sBAEiD;;;;;;AAUlE,MAAMC,2BAA2B;AAM1B,SAASD;IACd,MAAME,KAAKC,QAAQC,GAAG,CAACC,EAAE;IACzB,IAAIH,OAAO,OAAOA,IAAII,kBAAkB,QAAQ;QAC9C,OAAO;IACT;IACA,IAAIH,QAAQC,GAAG,CAACG,mBAAmB,EAAE;QACnC,OAAO;IACT;IACA,IAAI,CAACJ,QAAQK,KAAK,CAACC,KAAK,EAAE;QACxB,OAAO;IACT;IACA,OAAO;AACT;AAEA,qFAAqF,GACrF,SAASC,mBAAmBC,SAAiB;IAC3CC,QAAQC,GAAG,CACT,CAAC,oFAAoF,CAAC,GACpF,CAAC,6BAA6B,EAAEF,UAAU,wCAAwC,CAAC;AAEzF;AAEA,eAAeG,eAAeC,OAA2B;IACvD,MAAMC,cAAchB;IACpB,MAAMW,YAAYM,IAAAA,wBAAkB,EAACF,QAAQJ,SAAS,IAAII,QAAQG,GAAG;IACrER,mBAAmBC;IACnB,MAAM,EAAEQ,QAAQ,EAAEC,kBAAkB,EAAEC,SAAS,EAAE,GAAG,MAAMC,IAAAA,0BAAoB,EAC5EN,aACAD,QAAQI,QAAQ,EAChBJ,QAAQK,kBAAkB,IAAI,OAC9BL,QAAQM,SAAS,IAAI;IAGvB,MAAME,IAAAA,aAAO,EAAC;QACZC,aAAarB,QAAQsB,GAAG;QACxBd;QACAQ;QACAC;QACAC;QACAK,cACEvB,QAAQC,GAAG,CAACuB,8BAA8B,IAC1CC,eAAI,CAACC,IAAI,CAACC,WAAW,MAAM,MAAM7B;IACrC;AACF;AAEA,MAAM8B,UAAU,IAAIC,CAAAA,YAAM,SAAC;AAE3BD,QAAQE,IAAI,CAAC,oBAAoBC,WAAW,CAAC;AAE7CH,QACGI,OAAO,CAAC,QACRD,WAAW,CAAC,2EACZE,MAAM,CAAC,yBAAyB,0DAChCA,MAAM,CAAC,2BAA2B,oBAClCA,MAAM,CACL,4BACA,qFACE,qBAEHA,MAAM,CACL,yBACA,+FAEDA,MAAM,CACL,eACA,sGACE,wBAEHC,MAAM,CAACvB;AAEViB,QAAQO,UAAU,CAACnC,QAAQoC,IAAI,EAAEC,KAAK,CAAC,CAACC;IACtC7B,QAAQ6B,KAAK,CAACA,MAAMC,OAAO;IAC3BvC,QAAQwC,QAAQ,GAAG;AACrB"}
@@ -12,6 +12,11 @@ export type InitOptions = {
12
12
  * from JavaScript.
13
13
  */
14
14
  visualIntelligence?: boolean;
15
+ /**
16
+ * Adds `DonatableAppIntent` extensions to the intents of the selected examples, and has the setup
17
+ * module register them so `donateIntentAsync()` can donate them from JavaScript.
18
+ */
19
+ donations?: boolean;
15
20
  };
16
21
  export declare const DEFAULT_DIRECTORY = "app-intents";
17
22
  /** The example that `--visual-intelligence` extends. */
@@ -24,12 +29,24 @@ export declare function getExamplesPrompt(): PromptObject;
24
29
  * another choice being selected.
25
30
  */
26
31
  export declare function getVisualIntelligencePrompt(): PromptObject;
32
+ /**
33
+ * Asked last, and only when a selected example has intents to donate. It is a follow-up prompt for
34
+ * the same reason as the visual intelligence one.
35
+ */
36
+ export declare function getDonationsPrompt(): PromptObject;
27
37
  export type ResolvedExamples = {
28
38
  examples: InitExample[];
29
39
  visualIntelligence: boolean;
40
+ donations: boolean;
30
41
  };
31
- export declare function resolveExamplesAsync(interactive: boolean, values: readonly string[] | undefined, visualIntelligence?: boolean): Promise<ResolvedExamples>;
42
+ export declare function resolveExamplesAsync(interactive: boolean, values: readonly string[] | undefined, visualIntelligence?: boolean, donations?: boolean): Promise<ResolvedExamples>;
32
43
  export declare function normalizeDirectory(directory: string | undefined): string;
44
+ /**
45
+ * Throws when `--donations` was requested without an example that has intents to donate, rather
46
+ * than scaffolding the flag away silently. Like the visual intelligence check, the flag can reach
47
+ * this from the interactive picker too.
48
+ */
49
+ export declare function assertDonationsSelection(examples: readonly InitExample[], donations: boolean): void;
33
50
  /**
34
51
  * Throws when `--visual-intelligence` was requested without the example it extends, rather than
35
52
  * scaffolding the flag away silently.
package/cli/build/init.js CHANGED
@@ -6,7 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  ALL_INIT_EXAMPLES: null,
7
7
  DEFAULT_DIRECTORY: null,
8
8
  VISUAL_INTELLIGENCE_EXAMPLE: null,
9
+ assertDonationsSelection: null,
9
10
  assertVisualIntelligenceSelection: null,
11
+ getDonationsPrompt: null,
10
12
  getExamplesPrompt: null,
11
13
  getVisualIntelligencePrompt: null,
12
14
  normalizeDirectory: null,
@@ -30,9 +32,15 @@ _export(exports, {
30
32
  get VISUAL_INTELLIGENCE_EXAMPLE () {
31
33
  return VISUAL_INTELLIGENCE_EXAMPLE;
32
34
  },
35
+ get assertDonationsSelection () {
36
+ return assertDonationsSelection;
37
+ },
33
38
  get assertVisualIntelligenceSelection () {
34
39
  return assertVisualIntelligenceSelection;
35
40
  },
41
+ get getDonationsPrompt () {
42
+ return getDonationsPrompt;
43
+ },
36
44
  get getExamplesPrompt () {
37
45
  return getExamplesPrompt;
38
46
  },
@@ -149,12 +157,64 @@ const VISUAL_INTELLIGENCE_DESCRIPTION = 'Allows Siri to more intelligently read
149
157
  AppEntityIdentifierRegistry.shared.registerIndexed("mailDraft", as: MailDraftEntity.self)
150
158
  }`;
151
159
  /** Finds the registration in an `AppIntentsSetup.swift` on disk, however it is formatted around. */ const VISUAL_INTELLIGENCE_REGISTRATION_PATTERN = /registerIndexed\s*\(\s*["']mailDraft["']/;
160
+ const DONATIONS_DESCRIPTION = 'Adds extensions to the example intents that let JavaScript donate them, so Siri and Spotlight ' + 'can suggest them.';
161
+ /**
162
+ * Added by `--donations`. Like the visual intelligence layer, these are extensions of the base
163
+ * types, so each example is unchanged whether or not the flag is used.
164
+ */ const DONATION_ENTRIES = {
165
+ counter: {
166
+ templateFile: 'examples/donations/IncreaseCounterIntent+Donation.swift',
167
+ name: 'increaseCounter',
168
+ registration: ` AppIntentDonationRegistry.shared.register("increaseCounter", as: IncreaseCounterIntent.self)`
169
+ },
170
+ restaurant: {
171
+ templateFile: 'examples/donations/OrderFoodIntent+Donation.swift',
172
+ name: 'orderFood',
173
+ registration: ` AppIntentDonationRegistry.shared.register("orderFood", as: OrderFoodIntent.self)`
174
+ },
175
+ mail: {
176
+ templateFile: 'examples/donations/CreateDraftIntent+Donation.swift',
177
+ name: 'createMailDraft',
178
+ registration: ` if #available(iOS 18.0, macOS 15.0, *) {
179
+ AppIntentDonationRegistry.shared.register("createMailDraft", as: CreateDraftIntent.self)
180
+ }`
181
+ }
182
+ };
183
+ /** Added by `--donations` together with `--visual-intelligence`, for its open intent. */ const VISUAL_INTELLIGENCE_DONATION_ENTRY = {
184
+ templateFile: 'examples/donations/OpenMailDraftIntent+Donation.swift',
185
+ name: 'openMailDraft',
186
+ // `OpenMailDraftIntent` only exists when the app is compiled with the iOS 27 SDK.
187
+ registration: ` #if compiler(>=6.4)
188
+ if #available(iOS 27.0, macOS 27.0, *) {
189
+ AppIntentDonationRegistry.shared.register("openMailDraft", as: OpenMailDraftIntent.self)
190
+ }
191
+ #endif`
192
+ };
193
+ function getDonationEntries(examples, visualIntelligence) {
194
+ const entries = examples.flatMap((example)=>{
195
+ const entry = DONATION_ENTRIES[example];
196
+ return entry ? [
197
+ entry
198
+ ] : [];
199
+ });
200
+ if (visualIntelligence) {
201
+ entries.push(VISUAL_INTELLIGENCE_DONATION_ENTRY);
202
+ }
203
+ return entries;
204
+ }
205
+ /** Finds a donation registration in an `AppIntentsSetup.swift` on disk, however it is formatted. */ function hasDonationRegistration(contents, entry) {
206
+ return new RegExp(`register\\s*\\(\\s*["']${entry.name}["']`).test(contents);
207
+ }
152
208
  /**
153
209
  * Builds the setup module. It is generated rather than copied because what it wires up depends on
154
- * the selection: it may only refer to `AppShortcuts` when a provider is actually written, and it
155
- * registers the entity kind only for visual intelligence.
210
+ * the selection: it may only refer to `AppShortcuts` when a provider is actually written, it
211
+ * registers the entity kind only for visual intelligence, and it registers intents for donation
212
+ * only when their donation code is scaffolded.
156
213
  */ function renderAppIntentsSetup(options) {
157
214
  const onCreate = [];
215
+ if (options.donationEntries.length > 0) {
216
+ onCreate.push(options.donationEntries.map((entry)=>entry.registration).join('\n'));
217
+ }
158
218
  if (options.visualIntelligence) {
159
219
  onCreate.push(VISUAL_INTELLIGENCE_REGISTRATION);
160
220
  }
@@ -296,35 +356,49 @@ function getVisualIntelligencePrompt() {
296
356
  initial: false
297
357
  };
298
358
  }
299
- async function resolveExamplesAsync(interactive, values, visualIntelligence = false) {
359
+ function getDonationsPrompt() {
360
+ return {
361
+ type: 'confirm',
362
+ name: 'donations',
363
+ message: `Include donation native code? ${DONATIONS_DESCRIPTION}`,
364
+ initial: false
365
+ };
366
+ }
367
+ async function resolveExamplesAsync(interactive, values, visualIntelligence = false, donations = false) {
300
368
  if (values && values.length > 0) {
301
369
  return {
302
370
  examples: resolveExamples(values),
303
- visualIntelligence
371
+ visualIntelligence,
372
+ donations
304
373
  };
305
374
  }
306
375
  if (!interactive) {
307
376
  return {
308
377
  examples: DEFAULT_EXAMPLES,
309
- visualIntelligence
378
+ visualIntelligence,
379
+ donations
310
380
  };
311
381
  }
312
382
  const { examples } = await (0, _prompts().default)(getExamplesPrompt(), {
313
383
  onCancel: ()=>process.exit(0)
314
384
  });
315
385
  const selected = resolveExamples(examples);
316
- if (visualIntelligence || !selected.includes(VISUAL_INTELLIGENCE_EXAMPLE)) {
317
- return {
318
- examples: selected,
319
- visualIntelligence
320
- };
386
+ if (!visualIntelligence && selected.includes(VISUAL_INTELLIGENCE_EXAMPLE)) {
387
+ const answer = await (0, _prompts().default)(getVisualIntelligencePrompt(), {
388
+ onCancel: ()=>process.exit(0)
389
+ });
390
+ visualIntelligence = answer.visualIntelligence === true;
391
+ }
392
+ if (!donations && getDonationEntries(selected, false).length > 0) {
393
+ const answer = await (0, _prompts().default)(getDonationsPrompt(), {
394
+ onCancel: ()=>process.exit(0)
395
+ });
396
+ donations = answer.donations === true;
321
397
  }
322
- const answer = await (0, _prompts().default)(getVisualIntelligencePrompt(), {
323
- onCancel: ()=>process.exit(0)
324
- });
325
398
  return {
326
399
  examples: selected,
327
- visualIntelligence: answer.visualIntelligence === true
400
+ visualIntelligence,
401
+ donations
328
402
  };
329
403
  }
330
404
  function normalizeDirectory(directory) {
@@ -438,6 +512,23 @@ ${APP_SHORTCUTS_FOOTER}`;
438
512
  const where = contents.includes('OnCreate') ? `inside the existing OnCreate block in ${directory}/AppIntentsSetup.swift` : `to the definition in ${directory}/AppIntentsSetup.swift`;
439
513
  console.warn(`${directory}/AppIntentsSetup.swift already exists and init never overwrites it, so it does ` + `not register a shortcuts refresh handler - but this app now has an AppShortcutsProvider. ` + `Siri resolves the parameters of a shortcut phrase against the values it was last given, so ` + `without the handler a phrase like "Order <dish>" keeps offering the dishes from whenever ` + `the app was built, however often JavaScript republishes the catalog. Add this ${where}:\n\n` + `${snippet}\n`);
440
514
  }
515
+ /**
516
+ * What to paste into a kept `AppIntentsSetup.swift` to run `statements` on create, and where.
517
+ *
518
+ * A setup module that already has an `OnCreate` - one that refreshes a shortcuts provider, or one
519
+ * the user wrote - needs the statements alone; a module without one needs the block around them too.
520
+ */ function getOnCreateSnippet(contents, directory, statements) {
521
+ if (contents.includes('OnCreate')) {
522
+ return {
523
+ snippet: statements,
524
+ location: `the OnCreate block in ${directory}/AppIntentsSetup.swift`
525
+ };
526
+ }
527
+ return {
528
+ snippet: ` OnCreate {\n${statements}\n }`,
529
+ location: `the definition() body in ${directory}/AppIntentsSetup.swift`
530
+ };
531
+ }
441
532
  /**
442
533
  * Warns when visual intelligence was requested but the `AppIntentsSetup.swift` this run kept does
443
534
  * not register the entity kind.
@@ -451,19 +542,37 @@ ${APP_SHORTCUTS_FOOTER}`;
451
542
  if (VISUAL_INTELLIGENCE_REGISTRATION_PATTERN.test(contents)) {
452
543
  return;
453
544
  }
454
- // A setup module that already has an `OnCreate` - one that refreshes a shortcuts provider, or one
455
- // the user wrote - needs the statement alone; a module without one needs the block around it too.
456
- const hasOnCreate = contents.includes('OnCreate');
457
- const snippet = hasOnCreate ? VISUAL_INTELLIGENCE_REGISTRATION : ` OnCreate {\n${VISUAL_INTELLIGENCE_REGISTRATION}\n }`;
458
- const location = hasOnCreate ? `the OnCreate block in ${directory}/AppIntentsSetup.swift` : `the definition() body in ${directory}/AppIntentsSetup.swift`;
545
+ const { snippet, location } = getOnCreateSnippet(contents, directory, VISUAL_INTELLIGENCE_REGISTRATION);
459
546
  console.warn(`${directory}/AppIntentsSetup.swift already exists and init never overwrites it, so the visual ` + `intelligence layer is scaffolded but not registered. Its Swift files are compiled into the ` + `app, and the MailDraftEntity kind is only usable once the setup module registers it: until ` + `then appEntityIdentifier() resolves nothing and no draft reaches Spotlight, so the feature ` + `is inert with no error to go on. Add this to ${location}:\n\n${snippet}\n`);
460
547
  }
548
+ /**
549
+ * Warns when donation code was requested but the `AppIntentsSetup.swift` this run kept does not
550
+ * register every donatable intent.
551
+ *
552
+ * `init` never overwrites the setup module, so adding the flag to a setup scaffolded earlier copies
553
+ * the `DonatableAppIntent` extensions but leaves the registrations out. JavaScript donates by the
554
+ * registered name, so without them every `donateIntentAsync()` call for those intents rejects.
555
+ */ async function warnAboutMissingDonationRegistrationsAsync(filePath, directory, entries) {
556
+ const contents = await _promises().default.readFile(filePath, 'utf8');
557
+ const missing = entries.filter((entry)=>!hasDonationRegistration(contents, entry));
558
+ if (missing.length === 0) {
559
+ return;
560
+ }
561
+ const { snippet, location } = getOnCreateSnippet(contents, directory, missing.map((entry)=>entry.registration).join('\n'));
562
+ console.warn(`${directory}/AppIntentsSetup.swift already exists and init never overwrites it, so these ` + `intents have donation code but are not registered for donation: ` + `${missing.map((entry)=>entry.name).join(', ')}. JavaScript donates an intent by the name ` + `it is registered under, so donateIntentAsync() rejects these names until the setup module ` + `registers them. Add this to ${location}:\n\n${snippet}\n`);
563
+ }
564
+ function assertDonationsSelection(examples, donations) {
565
+ if (donations && getDonationEntries(examples, false).length === 0) {
566
+ const donatable = ALL_INIT_EXAMPLES.filter((example)=>DONATION_ENTRIES[example]);
567
+ throw new Error(`--donations adds donation code to the selected examples, and the selected examples ` + `(${examples.join(', ')}) have no intents to donate. Add one of ${donatable.join(', ')} ` + `— select it in the picker, or pass --examples — or run again without --donations.`);
568
+ }
569
+ }
461
570
  function assertVisualIntelligenceSelection(examples, visualIntelligence) {
462
571
  if (visualIntelligence && !examples.includes(VISUAL_INTELLIGENCE_EXAMPLE)) {
463
572
  throw new Error(`--visual-intelligence extends the ${VISUAL_INTELLIGENCE_EXAMPLE} example with Spotlight ` + `indexing and on-screen entity support, and the selected examples ` + `(${examples.join(', ')}) do not include it. Add the ${VISUAL_INTELLIGENCE_EXAMPLE} ` + `example — select it in the picker, or pass ` + `--examples ${VISUAL_INTELLIGENCE_EXAMPLE} — or run again without --visual-intelligence.`);
464
573
  }
465
574
  }
466
- function getTemplateFiles(examples, visualIntelligence) {
575
+ function getTemplateFiles(examples, visualIntelligence, donationEntries) {
467
576
  const files = [];
468
577
  for (const example of examples){
469
578
  files.push(...EXAMPLE_TEMPLATE_FILES[example]);
@@ -471,6 +580,7 @@ function getTemplateFiles(examples, visualIntelligence) {
471
580
  if (visualIntelligence) {
472
581
  files.push(...VISUAL_INTELLIGENCE_TEMPLATE_FILES);
473
582
  }
583
+ files.push(...donationEntries.map((entry)=>entry.templateFile));
474
584
  return files;
475
585
  }
476
586
  function getDestinationPath(templateFile) {
@@ -686,7 +796,10 @@ function readAppConfig(projectRoot, directory) {
686
796
  async function runInit(options) {
687
797
  const { projectRoot, directory, examples, templatesDir } = options;
688
798
  const visualIntelligence = options.visualIntelligence ?? false;
799
+ const donations = options.donations ?? false;
689
800
  assertVisualIntelligenceSelection(examples, visualIntelligence);
801
+ assertDonationsSelection(examples, donations);
802
+ const donationEntries = donations ? getDonationEntries(examples, visualIntelligence) : [];
690
803
  const config = readAppConfig(projectRoot, directory);
691
804
  await assertDirectoryIsNotAlreadyConfiguredAsync(projectRoot, config, directory);
692
805
  const modifications = getConfigModifications(projectRoot, config, directory);
@@ -710,9 +823,10 @@ async function runInit(options) {
710
823
  // this run's selection contributes no phrase and writes none.
711
824
  renderAppIntentsSetup({
712
825
  hasShortcuts,
713
- visualIntelligence
826
+ visualIntelligence,
827
+ donationEntries
714
828
  }), written, skipped, 'AppIntentsSetup.swift');
715
- for (const templateFile of getTemplateFiles(examples, visualIntelligence)){
829
+ for (const templateFile of getTemplateFiles(examples, visualIntelligence, donationEntries)){
716
830
  const destinationPath = getDestinationPath(templateFile);
717
831
  const destination = _path().default.join(intentsDir, destinationPath);
718
832
  if ((0, _fs().existsSync)(destination)) {
@@ -743,7 +857,15 @@ async function runInit(options) {
743
857
  console.log(findPluginEntry(config.rootConfig) ? `Pointed '${PLUGIN_NAME}' at '${directory}' in plugins` : `Added '${PLUGIN_NAME}' to plugins`);
744
858
  }
745
859
  }
746
- console.log(`Selected examples: ${examples.join(', ')}${visualIntelligence ? ' (+ visual intelligence)' : ''}`);
860
+ const additions = [
861
+ ...visualIntelligence ? [
862
+ 'visual intelligence'
863
+ ] : [],
864
+ ...donations ? [
865
+ 'donations'
866
+ ] : []
867
+ ];
868
+ console.log(`Selected examples: ${examples.join(', ')}` + additions.map((addition)=>` (+ ${addition})`).join(''));
747
869
  if (written.length) {
748
870
  console.log(`Created in ${directory}/: ${written.join(', ')}`);
749
871
  }
@@ -759,6 +881,9 @@ async function runInit(options) {
759
881
  if (visualIntelligence && keptExistingAppIntentsSetup) {
760
882
  await warnAboutMissingEntityRegistrationAsync(appIntentsSetupPath, directory);
761
883
  }
884
+ if (donationEntries.length > 0 && keptExistingAppIntentsSetup) {
885
+ await warnAboutMissingDonationRegistrationsAsync(appIntentsSetupPath, directory, donationEntries);
886
+ }
762
887
  console.log(`\nNext steps:\n` + ` 1. npx expo prebuild -p ios\n` + ` 2. npx expo run:ios\n` + ` 3. Learn how to receive intent invocations in your JavaScript code\n` + ` https://docs.expo.dev/versions/latest/sdk/app-intents/#usage`);
763
888
  }
764
889
 
@@ -1 +1 @@
1
- {"version":3,"sources":["init.ts"],"sourcesContent":[null],"names":["ALL_INIT_EXAMPLES","DEFAULT_DIRECTORY","VISUAL_INTELLIGENCE_EXAMPLE","assertVisualIntelligenceSelection","getExamplesPrompt","getVisualIntelligencePrompt","normalizeDirectory","resolveExamples","resolveExamplesAsync","runInit","DEFAULT_EXAMPLES","EXAMPLE_DESCRIPTIONS","minimal","counter","restaurant","mail","EXAMPLE_TEMPLATE_FILES","VISUAL_INTELLIGENCE_DESCRIPTION","VISUAL_INTELLIGENCE_TEMPLATE_FILES","VISUAL_INTELLIGENCE_REGISTRATION","VISUAL_INTELLIGENCE_REGISTRATION_PATTERN","renderAppIntentsSetup","options","onCreate","visualIntelligence","push","hasShortcuts","body","length","join","APP_SHORTCUTS_HEADER","APP_SHORTCUTS_FOOTER","SHORTCUT_ENTRIES","intentType","block","PLUGIN_NAME","APP_INTENTS_SETUP_FILE_NAME","createPluginEntry","directory","getPluginSnippet","getManualConfigSnippet","splitExampleValues","values","flatMap","value","split","map","trim","normalizedValues","filter","Boolean","toLowerCase","invalid","includes","Error","example","selected","Set","type","name","message","choices","title","description","hint","initial","interactive","examples","prompts","onCancel","process","exit","answer","normalized","replace","path","isAbsolute","segments","segment","PREBUILD_MANAGED_DIRECTORIES","warnAboutPrebuildManagedDirectory","topLevelDirectory","find","managedDirectory","startsWith","console","warn","renderAppShortcuts","blocks","entry","warnAboutMissingShortcutEntriesAsync","filePath","contents","fs","readFile","missing","names","warnAboutMissingShortcutRefreshAsync","snippet","where","warnAboutMissingEntityRegistrationAsync","test","hasOnCreate","location","getTemplateFiles","files","getDestinationPath","templateFile","writeFileIfMissing","written","skipped","displayPath","existsSync","mkdir","dirname","recursive","writeFile","CONFIG_READ_OPTIONS","skipPlugins","skipSDKVersionRequirement","describeFailedConfigPath","projectRoot","paths","error","failedPath","fileName","configPath","undefined","dynamicConfigPath","staticConfigPath","relative","readAppConfig","getConfigFilePaths","getConfig","getStaticExpoConfig","rootConfig","config","expo","findPluginEntry","plugins","Array","isArray","plugin","getPluginDirectory","props","getWatchedDirectories","exp","experiments","inlineModules","watchedDirectories","isSameOrInside","ancestor","relativePath","resolve","sep","isWatchedDirectory","some","watchedDirectory","isSameDirectory","a","b","findWatchedEntriesCovering","findOtherAppIntentsSetupAsync","requestedSetupPath","queue","currentDirectory","shift","entries","readdir","withFileTypes","catch","entryPath","isDirectory","isFile","assertDirectoryIsNotAlreadyConfiguredAsync","existingSetup","pluginEntry","configuredDirectory","coveringEntries","isSingleEntry","entryList","getConfigModifications","modifications","templatesDir","intentsDir","appShortcutsPath","keptExistingAppShortcuts","appShortcuts","appIntentsSetupPath","keptExistingAppIntentsSetup","destinationPath","destination","copyFile","updatedAppConfig","Object","keys","result","modifyConfigAsync","log"],"mappings":"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"}
1
+ {"version":3,"sources":["init.ts"],"sourcesContent":[null],"names":["ALL_INIT_EXAMPLES","DEFAULT_DIRECTORY","VISUAL_INTELLIGENCE_EXAMPLE","assertDonationsSelection","assertVisualIntelligenceSelection","getDonationsPrompt","getExamplesPrompt","getVisualIntelligencePrompt","normalizeDirectory","resolveExamples","resolveExamplesAsync","runInit","DEFAULT_EXAMPLES","EXAMPLE_DESCRIPTIONS","minimal","counter","restaurant","mail","EXAMPLE_TEMPLATE_FILES","VISUAL_INTELLIGENCE_DESCRIPTION","VISUAL_INTELLIGENCE_TEMPLATE_FILES","VISUAL_INTELLIGENCE_REGISTRATION","VISUAL_INTELLIGENCE_REGISTRATION_PATTERN","DONATIONS_DESCRIPTION","DONATION_ENTRIES","templateFile","name","registration","VISUAL_INTELLIGENCE_DONATION_ENTRY","getDonationEntries","examples","visualIntelligence","entries","flatMap","example","entry","push","hasDonationRegistration","contents","RegExp","test","renderAppIntentsSetup","options","onCreate","donationEntries","length","map","join","hasShortcuts","body","APP_SHORTCUTS_HEADER","APP_SHORTCUTS_FOOTER","SHORTCUT_ENTRIES","intentType","block","PLUGIN_NAME","APP_INTENTS_SETUP_FILE_NAME","createPluginEntry","directory","getPluginSnippet","getManualConfigSnippet","splitExampleValues","values","value","split","trim","normalizedValues","filter","Boolean","toLowerCase","invalid","includes","Error","selected","Set","type","message","choices","title","description","hint","initial","interactive","donations","prompts","onCancel","process","exit","answer","normalized","replace","path","isAbsolute","segments","segment","PREBUILD_MANAGED_DIRECTORIES","warnAboutPrebuildManagedDirectory","topLevelDirectory","find","managedDirectory","startsWith","console","warn","renderAppShortcuts","blocks","warnAboutMissingShortcutEntriesAsync","filePath","fs","readFile","missing","names","warnAboutMissingShortcutRefreshAsync","snippet","where","getOnCreateSnippet","statements","location","warnAboutMissingEntityRegistrationAsync","warnAboutMissingDonationRegistrationsAsync","donatable","getTemplateFiles","files","getDestinationPath","writeFileIfMissing","written","skipped","displayPath","existsSync","mkdir","dirname","recursive","writeFile","CONFIG_READ_OPTIONS","skipPlugins","skipSDKVersionRequirement","describeFailedConfigPath","projectRoot","paths","error","failedPath","fileName","configPath","undefined","dynamicConfigPath","staticConfigPath","relative","readAppConfig","getConfigFilePaths","getConfig","getStaticExpoConfig","rootConfig","config","expo","findPluginEntry","plugins","Array","isArray","plugin","getPluginDirectory","props","getWatchedDirectories","exp","experiments","inlineModules","watchedDirectories","isSameOrInside","ancestor","relativePath","resolve","sep","isWatchedDirectory","some","watchedDirectory","isSameDirectory","a","b","findWatchedEntriesCovering","findOtherAppIntentsSetupAsync","requestedSetupPath","queue","currentDirectory","shift","readdir","withFileTypes","catch","entryPath","isDirectory","isFile","assertDirectoryIsNotAlreadyConfiguredAsync","existingSetup","pluginEntry","configuredDirectory","coveringEntries","isSingleEntry","entryList","getConfigModifications","modifications","templatesDir","intentsDir","appShortcutsPath","keptExistingAppShortcuts","appShortcuts","appIntentsSetupPath","keptExistingAppIntentsSetup","destinationPath","destination","copyFile","updatedAppConfig","Object","keys","result","modifyConfigAsync","log","additions","addition"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;QAQaA;eAAAA;;QAsBAC;eAAAA;;QA6BAC;eAAAA;;QA8kBGC;eAAAA;;QAsBAC;eAAAA;;QAjUAC;eAAAA;;QAjCAC;eAAAA;;QAoBAC;eAAAA;;QA+DAC;eAAAA;;QAtHAC;eAAAA;;QAmFMC;eAAAA;;QAwpBAC;eAAAA;;;;yBArgC2C;;;;;;;yBAEtC;;;;;;;gEACZ;;;;;;;gEACE;;;;;;;gEACG;;;;;;;;;;;AAGb,MAAMX,oBAAoB;IAAC;IAAW;IAAW;IAAc;CAAO;AAsBtE,MAAMC,oBAAoB;AACjC,MAAMW,mBAAkC;IAAC;CAAU;AAEnD,MAAMC,uBAAoD;IACxDC,SAAS;IACTC,SAAS;IACTC,YAAY;IACZC,MAAM;AACR;AAEA,MAAMC,yBAAwD;IAC5DJ,SAAS,EAAE;IACXC,SAAS;QAAC;KAA+C;IACzDC,YAAY;QACV;QACA;QACA;KACD;IACDC,MAAM;QACJ;QACA;QACA;QACA;QACA;QACA;KACD;AACH;AAGO,MAAMf,8BAA2C;AAExD,MAAMiB,kCACJ;AAEF;;;CAGC,GACD,MAAMC,qCAAqC;IACzC;IACA;IACA;IACA;CACD;AAED;;;;;;;CAOC,GACD,MAAMC,mCAAmC,CAAC;;OAEnC,CAAC;AAER,kGAAkG,GAClG,MAAMC,2CAA2C;AAEjD,MAAMC,wBACJ,mGACA;AAWF;;;CAGC,GACD,MAAMC,mBAAgE;IACpET,SAAS;QACPU,cAAc;QACdC,MAAM;QACNC,cAAc,CAAC,kGAAkG,CAAC;IACpH;IACAX,YAAY;QACVS,cAAc;QACdC,MAAM;QACNC,cAAc,CAAC,sFAAsF,CAAC;IACxG;IACAV,MAAM;QACJQ,cAAc;QACdC,MAAM;QACNC,cAAc,CAAC;;OAEZ,CAAC;IACN;AACF;AAEA,uFAAuF,GACvF,MAAMC,qCAAoD;IACxDH,cAAc;IACdC,MAAM;IACN,kFAAkF;IAClFC,cAAc,CAAC;;;;YAIL,CAAC;AACb;AAEA,SAASE,mBACPC,QAAgC,EAChCC,kBAA2B;IAE3B,MAAMC,UAAUF,SAASG,OAAO,CAAC,CAACC;QAChC,MAAMC,QAAQX,gBAAgB,CAACU,QAAQ;QACvC,OAAOC,QAAQ;YAACA;SAAM,GAAG,EAAE;IAC7B;IACA,IAAIJ,oBAAoB;QACtBC,QAAQI,IAAI,CAACR;IACf;IACA,OAAOI;AACT;AAEA,kGAAkG,GAClG,SAASK,wBAAwBC,QAAgB,EAAEH,KAAoB;IACrE,OAAO,IAAII,OAAO,CAAC,uBAAuB,EAAEJ,MAAMT,IAAI,CAAC,IAAI,CAAC,EAAEc,IAAI,CAACF;AACrE;AAEA;;;;;CAKC,GACD,SAASG,sBAAsBC,OAI9B;IACC,MAAMC,WAAqB,EAAE;IAC7B,IAAID,QAAQE,eAAe,CAACC,MAAM,GAAG,GAAG;QACtCF,SAASP,IAAI,CAACM,QAAQE,eAAe,CAACE,GAAG,CAAC,CAACX,QAAUA,MAAMR,YAAY,EAAEoB,IAAI,CAAC;IAChF;IACA,IAAIL,QAAQX,kBAAkB,EAAE;QAC9BY,SAASP,IAAI,CAACf;IAChB;IACA,IAAIqB,QAAQM,YAAY,EAAE;QACxBL,SAASP,IAAI,CAAC,CAAC;;;;;OAKZ,CAAC;IACN;IAEA,MAAMa,OAAiB;QAAC;KAA8B;IACtD,IAAIN,SAASE,MAAM,GAAG,GAAG;QACvBI,KAAKb,IAAI,CAAC,CAAC,gBAAgB,EAAEO,SAASI,IAAI,CAAC,QAAQ,OAAO,CAAC;IAC7D;IACA,OAAO,CAAC;;;;;;;AAOV,EAAEE,KAAKF,IAAI,CAAC,QAAQ;;;AAGpB,CAAC;AACD;AAEA,MAAMG,uBAAuB,CAAC;;;;;;;;;;0CAUY,CAAC;AAE3C,MAAMC,uBAAuB,CAAC;;AAE9B,CAAC;AASD,MAAMC,mBAAgE;IACpErC,SAAS;QACPsC,YAAY;QACZC,OAAO,CAAC;;;;;;;KAOP,CAAC;IACJ;IACAtC,YAAY;QACVqC,YAAY;QACZC,OAAO,CAAC;;;;;;;;;;KAUP,CAAC;IACJ;AACF;AAEA,MAAMC,cAAc;AACpB,MAAMC,8BAA8B;AAIpC,SAASC,kBAAkBC,SAAiB;IAC1C,IAAIA,cAAczD,mBAAmB;QACnC,OAAOsD;IACT;IACA,OAAO;QAACA;QAAa;YAAEG;QAAU;KAAE;AACrC;AAEA,SAASC,iBAAiBD,SAAiB;IACzC,OAAOA,cAAczD,oBACjB,CAAC,CAAC,EAAEsD,YAAY,CAAC,CAAC,GAClB,CAAC,EAAE,EAAEA,YAAY,iBAAiB,EAAEG,UAAU,IAAI,CAAC;AACzD;AAEA,SAASE,uBAAuBF,SAAiB;IAC/C,OACE,CAAC,wDAAwD,EAAEA,UAAU,SAAS,CAAC,GAC/E,CAAC,YAAY,EAAEC,iBAAiBD,WAAW,EAAE,CAAC;AAElD;AAEA,SAASG,mBAAmBC,MAAgB;IAC1C,OAAOA,OAAO7B,OAAO,CAAC,CAAC8B,QAAUA,MAAMC,KAAK,CAAC,MAAMlB,GAAG,CAAC,CAACiB,QAAUA,MAAME,IAAI;AAC9E;AAEO,SAASxD,gBAAgBqD,MAAqC;IACnE,MAAMI,mBAAmBL,mBAAmB;WAAKC,UAAU,EAAE;KAAE,EAC5DK,MAAM,CAACC,SACPtB,GAAG,CAAC,CAACiB,QAAUA,MAAMM,WAAW;IAEnC,IAAIH,iBAAiBrB,MAAM,KAAK,GAAG;QACjC,OAAOjC;IACT;IAEA,mGAAmG;IACnG,mCAAmC;IACnC,MAAM0D,UAAUJ,iBAAiBC,MAAM,CACrC,CAACJ,QAAUA,UAAU,SAAS,CAAC,AAAC/D,kBAAwCuE,QAAQ,CAACR;IAEnF,IAAIO,QAAQzB,MAAM,GAAG,GAAG;QACtB,MAAM,IAAI2B,MACR,CAAC,oBAAoB,EAAEF,QAAQvB,IAAI,CAAC,MAAM,2BAA2B,CAAC,GACpE,GAAG/C,kBAAkB+C,IAAI,CAAC,MAAM,MAAM,CAAC;IAE7C;IAEA,IAAImB,iBAAiBK,QAAQ,CAAC,QAAQ;QACpC,4FAA4F;QAC5F,yFAAyF;QACzF,kEAAkE;QAClE,OAAOvE,kBAAkBmE,MAAM,CAAC,CAACjC,UAAYA,YAAY;IAC3D;IAEA,MAAMuC,WAAW;WAAI,IAAIC,IAAIR;KAAkB;IAC/C,IAAIO,SAAS5B,MAAM,GAAG,KAAK4B,SAASF,QAAQ,CAAC,YAAY;QACvD,OAAOE,SAASN,MAAM,CAAC,CAACjC,UAAYA,YAAY;IAClD;IACA,OAAOuC;AACT;AAEO,SAASnE;IACd,OAAO;QACLqE,MAAM;QACNjD,MAAM;QACNkD,SAAS;QACTC,SAAS7E,kBAAkB8C,GAAG,CAAC,CAACZ,UAAa,CAAA;gBAC3C4C,OAAO5C;gBACP6B,OAAO7B;gBACPuC,UAAUvC,YAAY;gBACtB6C,aAAalE,oBAAoB,CAACqB,QAAQ;YAC5C,CAAA;QACA8C,MAAM;IACR;AACF;AAOO,SAASzE;IACd,OAAO;QACLoE,MAAM;QACNjD,MAAM;QACNkD,SAAS,CAAC,iCAAiC,EAAEzD,iCAAiC;QAC9E8D,SAAS;IACX;AACF;AAMO,SAAS5E;IACd,OAAO;QACLsE,MAAM;QACNjD,MAAM;QACNkD,SAAS,CAAC,8BAA8B,EAAErD,uBAAuB;QACjE0D,SAAS;IACX;AACF;AAQO,eAAevE,qBACpBwE,WAAoB,EACpBpB,MAAqC,EACrC/B,qBAA8B,KAAK,EACnCoD,YAAqB,KAAK;IAE1B,IAAIrB,UAAUA,OAAOjB,MAAM,GAAG,GAAG;QAC/B,OAAO;YAAEf,UAAUrB,gBAAgBqD;YAAS/B;YAAoBoD;QAAU;IAC5E;IACA,IAAI,CAACD,aAAa;QAChB,OAAO;YAAEpD,UAAUlB;YAAkBmB;YAAoBoD;QAAU;IACrE;IAEA,MAAM,EAAErD,QAAQ,EAAE,GAAG,MAAMsD,IAAAA,kBAAO,EAAC9E,qBAAqB;QACtD+E,UAAU,IAAMC,QAAQC,IAAI,CAAC;IAC/B;IACA,MAAMd,WAAWhE,gBAAgBqB;IAEjC,IAAI,CAACC,sBAAsB0C,SAASF,QAAQ,CAACrE,8BAA8B;QACzE,MAAMsF,SAAS,MAAMJ,IAAAA,kBAAO,EAAC7E,+BAA+B;YAC1D8E,UAAU,IAAMC,QAAQC,IAAI,CAAC;QAC/B;QACAxD,qBAAqByD,OAAOzD,kBAAkB,KAAK;IACrD;IAEA,IAAI,CAACoD,aAAatD,mBAAmB4C,UAAU,OAAO5B,MAAM,GAAG,GAAG;QAChE,MAAM2C,SAAS,MAAMJ,IAAAA,kBAAO,EAAC/E,sBAAsB;YACjDgF,UAAU,IAAMC,QAAQC,IAAI,CAAC;QAC/B;QACAJ,YAAYK,OAAOL,SAAS,KAAK;IACnC;IAEA,OAAO;QAAErD,UAAU2C;QAAU1C;QAAoBoD;IAAU;AAC7D;AAEO,SAAS3E,mBAAmBkD,SAA6B;IAC9D,MAAM+B,aAAa,AAAC/B,CAAAA,aAAazD,iBAAgB,EAAGgE,IAAI,GAAGyB,OAAO,CAAC,OAAO;IAC1E,IAAI,CAACD,YAAY;QACf,MAAM,IAAIjB,MAAM;IAClB;IACA,IAAImB,eAAI,CAACC,UAAU,CAACH,aAAa;QAC/B,MAAM,IAAIjB,MAAM;IAClB;IAEA,iGAAiG;IACjG,iGAAiG;IACjG,wDAAwD;IACxD,MAAMqB,WAAWJ,WAAWzB,KAAK,CAAC,KAAKG,MAAM,CAAC,CAAC2B,UAAYA,WAAWA,YAAY;IAClF,IAAID,SAAStB,QAAQ,CAAC,OAAO;QAC3B,MAAM,IAAIC,MAAM;IAClB;IACA,IAAIqB,SAAShD,MAAM,KAAK,GAAG;QACzB,MAAM,IAAI2B,MACR,CAAC,mDAAmD,EAAEiB,WAAW,sBAAsB,CAAC,GACtF,CAAC,qFAAqF,CAAC,GACvF,CAAC,qDAAqD,EAAExF,kBAAkB,GAAG,CAAC;IAEpF;IACA,OAAO4F,SAAS9C,IAAI,CAAC;AACvB;AAEA,0FAA0F,GAC1F,MAAMgD,+BAA+B;IAAC;IAAO;CAAU;AAEvD;;;CAGC,GACD,SAASC,kCAAkCtC,SAAiB;IAC1D,yFAAyF;IACzF,MAAMuC,oBAAoBF,6BAA6BG,IAAI,CACzD,CAACC,mBACCzC,cAAcyC,oBAAoBzC,UAAU0C,UAAU,CAAC,GAAGD,iBAAiB,CAAC,CAAC;IAEjF,IAAI,CAACF,mBAAmB;QACtB;IACF;IACAI,QAAQC,IAAI,CACV,CAAC,2BAA2B,EAAE5C,UAAU,aAAa,EAAEuC,kBAAkB,UAAU,CAAC,GAClF,CAAC,mFAAmF,CAAC,GACrF,CAAC,aAAa,EAAEA,kBAAkB,2DAA2D,CAAC,GAC9F,CAAC,2FAA2F,CAAC,GAC7F,CAAC,SAAS,EAAEA,kBAAkB,oBAAoB,EAAEhG,kBAAkB,oBAAoB,CAAC,GAC3F,CAAC,CAAC,EAAEgG,kBAAkB,6CAA6C,CAAC;AAE1E;AAEA;;;;;;;CAOC,GACD,SAASM,mBAAmBzE,QAAgC;IAC1D,MAAM0E,SAAS1E,SAASG,OAAO,CAAC,CAACC;QAC/B,MAAMC,QAAQiB,gBAAgB,CAAClB,QAAQ;QACvC,OAAOC,QAAQ;YAACA,MAAMmB,KAAK;SAAC,GAAG,EAAE;IACnC;IAEA,IAAIkD,OAAO3D,MAAM,KAAK,GAAG;QACvB,OAAO;IACT;IAEA,OAAO,GAAGK,qBAAqB;AACjC,EAAEsD,OAAOzD,IAAI,CAAC,QAAQ;AACtB,EAAEI,sBAAsB;AACxB;AAEA;;;;;;CAMC,GACD,eAAesD,qCACbC,QAAgB,EAChBhD,SAAiB,EACjB5B,QAAgC;IAEhC,MAAMQ,WAAW,MAAMqE,mBAAE,CAACC,QAAQ,CAACF,UAAU;IAC7C,MAAMG,UAAU/E,SAASG,OAAO,CAAC,CAACC;QAChC,MAAMC,QAAQiB,gBAAgB,CAAClB,QAAQ;QACvC,OAAOC,SAAS,CAACG,SAASiC,QAAQ,CAACpC,MAAMkB,UAAU,IAAI;YAAC;gBAAEnB;gBAASC;YAAM;SAAE,GAAG,EAAE;IAClF;IACA,IAAI0E,QAAQhE,MAAM,KAAK,GAAG;QACxB;IACF;IAEA,MAAMiE,QAAQD,QAAQ/D,GAAG,CAAC,CAAC,EAAEZ,OAAO,EAAEC,KAAK,EAAE,GAAK,GAAGD,QAAQ,EAAE,EAAEC,MAAMkB,UAAU,CAAC,CAAC,CAAC,EAAEN,IAAI,CAAC;IAC3FsD,QAAQC,IAAI,CACV,GAAG5C,UAAU,mFAAmF,CAAC,GAC/F,CAAC,4BAA4B,EAAEoD,MAAM,wDAAwD,CAAC,GAC9F,CAAC,2FAA2F,CAAC,GAC7F,CAAC,6CAA6C,EAAEpD,UAAU,wBAAwB,CAAC,GACnF,GAAGmD,QAAQ/D,GAAG,CAAC,CAAC,EAAEX,KAAK,EAAE,GAAKA,MAAMmB,KAAK,EAAEP,IAAI,CAAC,QAAQ,EAAE,CAAC;AAEjE;AAEA;;;;;;;;;CASC,GACD,eAAegE,qCACbL,QAAgB,EAChBhD,SAAiB;IAEjB,MAAMpB,WAAW,MAAMqE,mBAAE,CAACC,QAAQ,CAACF,UAAU;IAC7C,IAAIpE,SAASiC,QAAQ,CAAC,+BAA+B;QACnD;IACF;IAEA,2FAA2F;IAC3F,2CAA2C;IAC3C,MAAMyC,UAAU1E,SAASiC,QAAQ,CAAC,cAC9B,CAAC;;;;;OAKA,CAAC,GACF,CAAC;;;;;;;KAOF,CAAC;IACJ,MAAM0C,QAAQ3E,SAASiC,QAAQ,CAAC,cAC5B,CAAC,sCAAsC,EAAEb,UAAU,sBAAsB,CAAC,GAC1E,CAAC,qBAAqB,EAAEA,UAAU,sBAAsB,CAAC;IAE7D2C,QAAQC,IAAI,CACV,GAAG5C,UAAU,+EAA+E,CAAC,GAC3F,CAAC,yFAAyF,CAAC,GAC3F,CAAC,2FAA2F,CAAC,GAC7F,CAAC,yFAAyF,CAAC,GAC3F,CAAC,8EAA8E,EAAEuD,MAAM,KAAK,CAAC,GAC7F,GAAGD,QAAQ,EAAE,CAAC;AAEpB;AAEA;;;;;CAKC,GACD,SAASE,mBACP5E,QAAgB,EAChBoB,SAAiB,EACjByD,UAAkB;IAElB,IAAI7E,SAASiC,QAAQ,CAAC,aAAa;QACjC,OAAO;YACLyC,SAASG;YACTC,UAAU,CAAC,sBAAsB,EAAE1D,UAAU,sBAAsB,CAAC;QACtE;IACF;IACA,OAAO;QACLsD,SAAS,CAAC,gBAAgB,EAAEG,WAAW,OAAO,CAAC;QAC/CC,UAAU,CAAC,yBAAyB,EAAE1D,UAAU,sBAAsB,CAAC;IACzE;AACF;AAEA;;;;;;;;CAQC,GACD,eAAe2D,wCACbX,QAAgB,EAChBhD,SAAiB;IAEjB,MAAMpB,WAAW,MAAMqE,mBAAE,CAACC,QAAQ,CAACF,UAAU;IAC7C,IAAIpF,yCAAyCkB,IAAI,CAACF,WAAW;QAC3D;IACF;IAEA,MAAM,EAAE0E,OAAO,EAAEI,QAAQ,EAAE,GAAGF,mBAC5B5E,UACAoB,WACArC;IAEFgF,QAAQC,IAAI,CACV,GAAG5C,UAAU,kFAAkF,CAAC,GAC9F,CAAC,2FAA2F,CAAC,GAC7F,CAAC,2FAA2F,CAAC,GAC7F,CAAC,2FAA2F,CAAC,GAC7F,CAAC,6CAA6C,EAAE0D,SAAS,KAAK,EAAEJ,QAAQ,EAAE,CAAC;AAEjF;AAEA;;;;;;;CAOC,GACD,eAAeM,2CACbZ,QAAgB,EAChBhD,SAAiB,EACjB1B,OAAiC;IAEjC,MAAMM,WAAW,MAAMqE,mBAAE,CAACC,QAAQ,CAACF,UAAU;IAC7C,MAAMG,UAAU7E,QAAQmC,MAAM,CAAC,CAAChC,QAAU,CAACE,wBAAwBC,UAAUH;IAC7E,IAAI0E,QAAQhE,MAAM,KAAK,GAAG;QACxB;IACF;IAEA,MAAM,EAAEmE,OAAO,EAAEI,QAAQ,EAAE,GAAGF,mBAC5B5E,UACAoB,WACAmD,QAAQ/D,GAAG,CAAC,CAACX,QAAUA,MAAMR,YAAY,EAAEoB,IAAI,CAAC;IAElDsD,QAAQC,IAAI,CACV,GAAG5C,UAAU,6EAA6E,CAAC,GACzF,CAAC,gEAAgE,CAAC,GAClE,GAAGmD,QAAQ/D,GAAG,CAAC,CAACX,QAAUA,MAAMT,IAAI,EAAEqB,IAAI,CAAC,MAAM,2CAA2C,CAAC,GAC7F,CAAC,0FAA0F,CAAC,GAC5F,CAAC,4BAA4B,EAAEqE,SAAS,KAAK,EAAEJ,QAAQ,EAAE,CAAC;AAEhE;AAOO,SAAS7G,yBACd2B,QAAgC,EAChCqD,SAAkB;IAElB,IAAIA,aAAatD,mBAAmBC,UAAU,OAAOe,MAAM,KAAK,GAAG;QACjE,MAAM0E,YAAYvH,kBAAkBmE,MAAM,CAAC,CAACjC,UAAYV,gBAAgB,CAACU,QAAQ;QACjF,MAAM,IAAIsC,MACR,CAAC,mFAAmF,CAAC,GACnF,CAAC,CAAC,EAAE1C,SAASiB,IAAI,CAAC,MAAM,wCAAwC,EAAEwE,UAAUxE,IAAI,CAAC,MAAM,CAAC,CAAC,GACzF,CAAC,iFAAiF,CAAC;IAEzF;AACF;AAUO,SAAS3C,kCACd0B,QAAgC,EAChCC,kBAA2B;IAE3B,IAAIA,sBAAsB,CAACD,SAASyC,QAAQ,CAACrE,8BAA8B;QACzE,MAAM,IAAIsE,MACR,CAAC,kCAAkC,EAAEtE,4BAA4B,wBAAwB,CAAC,GACxF,CAAC,iEAAiE,CAAC,GACnE,CAAC,CAAC,EAAE4B,SAASiB,IAAI,CAAC,MAAM,6BAA6B,EAAE7C,4BAA4B,CAAC,CAAC,GACrF,CAAC,2CAA2C,CAAC,GAC7C,CAAC,WAAW,EAAEA,4BAA4B,8CAA8C,CAAC;IAE/F;AACF;AAEA,SAASsH,iBACP1F,QAAgC,EAChCC,kBAA2B,EAC3Ba,eAAyC;IAEzC,MAAM6E,QAAkB,EAAE;IAC1B,KAAK,MAAMvF,WAAWJ,SAAU;QAC9B2F,MAAMrF,IAAI,IAAIlB,sBAAsB,CAACgB,QAAQ;IAC/C;IACA,IAAIH,oBAAoB;QACtB0F,MAAMrF,IAAI,IAAIhB;IAChB;IACAqG,MAAMrF,IAAI,IAAIQ,gBAAgBE,GAAG,CAAC,CAACX,QAAUA,MAAMV,YAAY;IAC/D,OAAOgG;AACT;AAEA,SAASC,mBAAmBjG,YAAoB;IAC9C,OAAOA,aAAaiE,OAAO,CAAC,sBAAsB;AACpD;AAEA,eAAeiC,mBACbjB,QAAgB,EAChBpE,QAAgB,EAChBsF,OAAiB,EACjBC,OAAiB,EACjBC,WAAmB;IAEnB,IAAIC,IAAAA,gBAAU,EAACrB,WAAW;QACxBmB,QAAQzF,IAAI,CAAC0F;QACb;IACF;IACA,MAAMnB,mBAAE,CAACqB,KAAK,CAACrC,eAAI,CAACsC,OAAO,CAACvB,WAAW;QAAEwB,WAAW;IAAK;IACzD,MAAMvB,mBAAE,CAACwB,SAAS,CAACzB,UAAUpE;IAC7BsF,QAAQxF,IAAI,CAAC0F;AACf;AAEA;;;;;CAKC,GACD,MAAMM,sBAAsB;IAAEC,aAAa;IAAMC,2BAA2B;AAAK;AAEjF;;;;;;CAMC,GACD,SAASC,yBACPC,WAAmB,EACnBC,KAAsB,EACtBC,KAAc;IAEd,MAAMC,aAAcD,OAAkCE;IACtD,MAAMC,aACJ,AAAC,CAAA,OAAOF,eAAe,WAAWA,aAAaG,SAAQ,KACvDL,MAAMM,iBAAiB,IACvBN,MAAMO,gBAAgB;IACxB,OAAOH,aAAalD,eAAI,CAACsD,QAAQ,CAACT,aAAaK,cAAc;AAC/D;AAEA,SAASK,cAAcV,WAAmB,EAAE9E,SAAiB;IAC3D,MAAM+E,QAAQU,IAAAA,4BAAkB,EAACX;IACjC,IAAI;QACF,OAAOY,IAAAA,mBAAS,EAACZ,aAAaJ;IAChC,EAAE,OAAOM,OAAY;QACnB,MAAM,IAAIlE,MACR,CAAC,sCAAsC,EAAE+D,yBAAyBC,aAAaC,OAAOC,OAAO,EAAE,CAAC,GAC9F,CAAC,kFAAkF,CAAC,GACpF,CAAC,0DAA0D,EAAEA,MAAM9D,OAAO,CAAC,IAAI,CAAC,GAChF,CAAC,yFAAyF,CAAC,GAC3FhB,uBAAuBF;IAE7B;AACF;AAEA,yEAAyE,GACzE,SAAS2F,oBAAoBC,UAAuC;IAClE,MAAMC,SAA8BD,cAAc,CAAC;IACnD,OAAOC,OAAOC,IAAI,IAAID;AACxB;AAEA;;;;;;;CAOC,GACD,SAASE,gBAAgBH,UAAuC;IAC9D,MAAMI,UAAUL,oBAAoBC,YAAYI,OAAO;IACvD,IAAI,CAACC,MAAMC,OAAO,CAACF,UAAU;QAC3B,OAAOZ;IACT;IACA,OAAOY,QAAQxD,IAAI,CACjB,CAAC2D,SACCA,WAAWtG,eAAgBoG,MAAMC,OAAO,CAACC,WAAWA,MAAM,CAAC,EAAE,KAAKtG;AAExE;AAEA,6FAA6F,GAC7F,SAASuG,mBAAmB3H,KAAkB;IAC5C,IAAIwH,MAAMC,OAAO,CAACzH,QAAQ;QACxB,MAAM4H,QAAQ5H,KAAK,CAAC,EAAE;QACtB,IAAI4H,SAAS,OAAOA,UAAU,YAAY,OAAOA,MAAMrG,SAAS,KAAK,UAAU;YAC7E,OAAOqG,MAAMrG,SAAS;QACxB;IACF;IACA,OAAOzD;AACT;AAEA;;;CAGC,GACD,SAAS+J,sBAAsBT,MAAqB;IAClD,OAAOA,OAAOU,GAAG,CAACC,WAAW,EAAEC,eAAeC,sBAAsB,EAAE;AACxE;AAEA;;;;;;;;;;;;CAYC,GACD,SAASC,eAAe7B,WAAmB,EAAE8B,QAAgB,EAAE5G,SAAiB;IAC9E,MAAM6G,eAAe5E,eAAI,CAACsD,QAAQ,CAChCtD,eAAI,CAAC6E,OAAO,CAAChC,aAAa8B,WAC1B3E,eAAI,CAAC6E,OAAO,CAAChC,aAAa9E;IAG5B,IAAI6G,iBAAiB,IAAI;QACvB,OAAO;IACT;IACA,IAAI5E,eAAI,CAACC,UAAU,CAAC2E,eAAe;QACjC,OAAO;IACT;IACA,8FAA8F;IAC9F,6CAA6C;IAC7C,OAAO,CAACA,aAAavG,KAAK,CAAC2B,eAAI,CAAC8E,GAAG,EAAElG,QAAQ,CAAC;AAChD;AAEA;;;;;CAKC,GACD,SAASmG,mBACPlC,WAAmB,EACnB4B,kBAA4B,EAC5B1G,SAAiB;IAEjB,OAAO0G,mBAAmBO,IAAI,CAAC,CAACC,mBAC9BP,eAAe7B,aAAaoC,kBAAkBlH;AAElD;AAEA,0FAA0F,GAC1F,SAASmH,gBAAgBrC,WAAmB,EAAEsC,CAAS,EAAEC,CAAS;IAChE,OAAOpF,eAAI,CAAC6E,OAAO,CAAChC,aAAasC,OAAOnF,eAAI,CAAC6E,OAAO,CAAChC,aAAauC;AACpE;AAEA;;;;;CAKC,GACD,SAASC,2BACPxC,WAAmB,EACnB4B,kBAA4B,EAC5B1G,SAAiB;IAEjB,OAAO0G,mBAAmBjG,MAAM,CAAC,CAACyG,mBAChCP,eAAe7B,aAAaoC,kBAAkBlH;AAElD;AAEA,gGAAgG,GAChG,eAAeuH,8BACbzC,WAAmB,EACnB4B,kBAA4B,EAC5B1G,SAAiB;IAEjB,MAAMwH,qBAAqBvF,eAAI,CAAC6E,OAAO,CAAChC,aAAa9E,WAAWF;IAChE,MAAM2H,QAAQf,mBAAmBtH,GAAG,CAAC,CAAC8H,mBACpCjF,eAAI,CAAC6E,OAAO,CAAChC,aAAaoC;IAG5B,MAAOO,MAAMtI,MAAM,GAAG,EAAG;QACvB,MAAMuI,mBAAmBD,MAAME,KAAK;QACpC,MAAMrJ,UAAU,MAAM2E,mBAAE,CAAC2E,OAAO,CAACF,kBAAkB;YAAEG,eAAe;QAAK,GAAGC,KAAK,CAAC,IAAM;QACxF,IAAI,CAACxJ,SAAS;YACZ;QACF;QAEA,KAAK,MAAMG,SAASH,QAAS;YAC3B,MAAMyJ,YAAY9F,eAAI,CAAC5C,IAAI,CAACqI,kBAAkBjJ,MAAMT,IAAI;YACxD,IAAIS,MAAMuJ,WAAW,MAAMvJ,MAAMT,IAAI,KAAK,gBAAgB;gBACxDyJ,MAAM/I,IAAI,CAACqJ;YACb,OAAO,IACLtJ,MAAMwJ,MAAM,MACZxJ,MAAMT,IAAI,KAAK8B,+BACfmC,eAAI,CAAC6E,OAAO,CAACiB,eAAeP,oBAC5B;gBACA,OAAOvF,eAAI,CAACsD,QAAQ,CAACT,aAAaiD,WAAWzH,KAAK,CAAC2B,eAAI,CAAC8E,GAAG,EAAE1H,IAAI,CAAC;YACpE;QACF;IACF;IAEA,OAAO;AACT;AAEA;;;;CAIC,GACD,eAAe6I,2CACbpD,WAAmB,EACnBe,MAAqB,EACrB7F,SAAiB;IAEjB,kGAAkG;IAClG,4FAA4F;IAC5F,8FAA8F;IAC9F,2FAA2F;IAC3F,IAAI6F,OAAOR,iBAAiB,EAAE;QAC5B,MAAM8C,gBAAgB,MAAMZ,8BAC1BzC,aACAwB,sBAAsBT,SACtB7F;QAEF,IAAImI,eAAe;YACjB,MAAM,IAAIrH,MACR,CAAC,kFAAkF,CAAC,GAClF,CAAC,0CAA0C,CAAC,GAC5C,GAAGmB,eAAI,CAACsD,QAAQ,CAACT,aAAae,OAAOR,iBAAiB,EAAE,gCAAgC,CAAC,GACzF,CAAC,uBAAuB,EAAE8C,cAAc,8BAA8B,CAAC,GACvE,CAAC,CAAC,EAAEnI,UAAU,CAAC,EAAEF,4BAA4B,iCAAiC,CAAC,GAC/E,CAAC,+DAA+D,CAAC,GACjE,CAAC,mBAAmB,EAAEA,4BAA4B,mCAAmC,CAAC,GACtF,CAAC,kCAAkC,EAAEE,UAAU,qCAAqC,CAAC,GACrF,CAAC,gEAAgE,CAAC;QAExE;QACA;IACF;IAEA,MAAMoI,cAAcrC,gBAAgBF,OAAOD,UAAU;IACrD,IAAI,CAACwC,aAAa;QAChB;IACF;IACA,MAAMC,sBAAsBjC,mBAAmBgC;IAC/C,IAAIjB,gBAAgBrC,aAAauD,qBAAqBrI,YAAY;QAChE;IACF;IACA,MAAMsI,kBAAkBhB,2BACtBxC,aACAwB,sBAAsBT,SACtBwC;IAEF,IAAIC,gBAAgBnJ,MAAM,KAAK,GAAG;QAChC,iFAAiF;QACjF;IACF;IAEA,iGAAiG;IACjG,kGAAkG;IAClG,6FAA6F;IAC7F,MAAMoJ,gBAAgBD,gBAAgBnJ,MAAM,KAAK;IACjD,MAAMqJ,YAAYF,gBAAgBlJ,GAAG,CAAC,CAACX,QAAU,CAAC,CAAC,EAAEA,MAAM,CAAC,CAAC,EAAEY,IAAI,CAAC;IAEpE,MAAM,IAAIyB,MACR,CAAC,mDAAmD,EAAEuH,oBAAoB,iBAAiB,CAAC,GAC1F,CAAC,4BAA4B,EAAErI,UAAU,4CAA4C,CAAC,GACtF,CAAC,kCAAkC,EAAEqI,oBAAoB,8BAA8B,CAAC,GACxF,CAAC,yFAAyF,CAAC,GAC3F,CAAC,uFAAuF,CAAC,GACzF,CAAC,kDAAkD,CAAC,GACpD,CAAC,2DAA2D,CAAC,GAC7D,CAAC,sCAAsC,EAAEA,oBAAoB,uBAAuB,CAAC,GACrF,CAAC,oBAAoB,EAAErI,UAAU,kDAAkD,CAAC,GACpF,CAAC,2BAA2B,EAAEqI,oBAAoB,oBAAoB,CAAC,GACvE,GAAGE,gBAAgB,cAAc,cAAc,CAAC,EAAEC,UAAU,IAAI,CAAC,GACjE,CAAC,wDAAwD,CAAC,GAC1D,GAAGD,gBAAgB,eAAe,gBAAgB,WAAW,CAAC,GAC9D,GAAGA,gBAAgB,OAAO,OAAO,sCAAsC,CAAC,GACxE,CAAC,CAAC,EAAEF,oBAAoB,4BAA4B,CAAC;AAE3D;AAEA;;;;CAIC,GACD,SAASI,uBACP3D,WAAmB,EACnBe,MAAqB,EACrB7F,SAAiB;IAEjB,MAAM0I,gBAAqC,CAAC;IAE5C,IAAI,CAAC1B,mBAAmBlC,aAAawB,sBAAsBT,SAAS7F,YAAY;QAC9E0I,cAAclC,WAAW,GAAG;YAAEC,eAAe;gBAAEC,oBAAoB;oBAAC1G;iBAAU;YAAC;QAAE;IACnF;IAEA,MAAMoI,cAAcrC,gBAAgBF,OAAOD,UAAU;IACrD,IAAI,CAACwC,aAAa;QAChBM,cAAc1C,OAAO,GAAG;YAACjG,kBAAkBC;SAAW;IACxD,OAAO,IAAI,CAACmH,gBAAgBrC,aAAasB,mBAAmBgC,cAAcpI,YAAY;QACpF,6FAA6F;QAC7F,oDAAoD;QACpD0I,cAAc1C,OAAO,GAAG;YAAC;gBAACnG;gBAAa;oBAAEG;gBAAU;aAAE;SAAC;IACxD;IAEA,OAAO0I;AACT;AAaO,eAAezL,QAAQ+B,OAAoB;IAChD,MAAM,EAAE8F,WAAW,EAAE9E,SAAS,EAAE5B,QAAQ,EAAEuK,YAAY,EAAE,GAAG3J;IAC3D,MAAMX,qBAAqBW,QAAQX,kBAAkB,IAAI;IACzD,MAAMoD,YAAYzC,QAAQyC,SAAS,IAAI;IACvC/E,kCAAkC0B,UAAUC;IAC5C5B,yBAAyB2B,UAAUqD;IACnC,MAAMvC,kBAAkBuC,YAAYtD,mBAAmBC,UAAUC,sBAAsB,EAAE;IAEzF,MAAMwH,SAASL,cAAcV,aAAa9E;IAC1C,MAAMkI,2CAA2CpD,aAAae,QAAQ7F;IACtE,MAAM0I,gBAAgBD,uBAAuB3D,aAAae,QAAQ7F;IAClEsC,kCAAkCtC;IAElC,MAAM4I,aAAa3G,eAAI,CAAC5C,IAAI,CAACyF,aAAa9E;IAC1C,MAAMiD,mBAAE,CAACqB,KAAK,CAACsE,YAAY;QAAEpE,WAAW;IAAK;IAE7C,MAAMN,UAAoB,EAAE;IAC5B,MAAMC,UAAoB,EAAE;IAE5B,MAAM0E,mBAAmB5G,eAAI,CAAC5C,IAAI,CAACuJ,YAAY;IAC/C,MAAME,2BAA2BzE,IAAAA,gBAAU,EAACwE;IAE5C,MAAME,eAAelG,mBAAmBzE;IACxC,IAAI2K,cAAc;QAChB,MAAM9E,mBACJ4E,kBACAE,cACA7E,SACAC,SACA;IAEJ;IAEA,MAAM6E,sBAAsB/G,eAAI,CAAC5C,IAAI,CAACuJ,YAAY;IAClD,MAAMK,8BAA8B5E,IAAAA,gBAAU,EAAC2E;IAC/C,MAAM1J,eAAeyJ,iBAAiB,QAAQD;IAE9C,MAAM7E,mBACJ+E,qBACA,+FAA+F;IAC/F,8DAA8D;IAC9DjK,sBAAsB;QACpBO;QACAjB;QACAa;IACF,IACAgF,SACAC,SACA;IAGF,KAAK,MAAMpG,gBAAgB+F,iBAAiB1F,UAAUC,oBAAoBa,iBAAkB;QAC1F,MAAMgK,kBAAkBlF,mBAAmBjG;QAC3C,MAAMoL,cAAclH,eAAI,CAAC5C,IAAI,CAACuJ,YAAYM;QAC1C,IAAI7E,IAAAA,gBAAU,EAAC8E,cAAc;YAC3BhF,QAAQzF,IAAI,CAACwK;YACb;QACF;QACA,MAAMjG,mBAAE,CAACqB,KAAK,CAACrC,eAAI,CAACsC,OAAO,CAAC4E,cAAc;YAAE3E,WAAW;QAAK;QAC5D,MAAMvB,mBAAE,CAACmG,QAAQ,CAACnH,eAAI,CAAC5C,IAAI,CAACsJ,cAAc5K,eAAeoL;QACzDjF,QAAQxF,IAAI,CAACwK;IACf;IAEA,IAAIG,mBAAmB;IACvB,IAAIC,OAAOC,IAAI,CAACb,eAAevJ,MAAM,GAAG,GAAG;QACzC,MAAMqK,SAAS,MAAMC,IAAAA,2BAAiB,EAAC3E,aAAa4D,eAAehE;QACnE2E,mBAAmBG,OAAOvI,IAAI,KAAK;QACnC,IAAI,CAACoI,kBAAkB;YACrB1G,QAAQC,IAAI,CACV,CAAC,oDAAoD,EAAE4G,OAAOtI,OAAO,CAAC,EAAE,CAAC,GACvE,CAAC,qFAAqF,CAAC,GACvF,CAAC,8CAA8C,CAAC,GAChDhB,uBAAuBF;QAE7B;IACF;IAEA,2FAA2F;IAC3F,0FAA0F;IAC1F,IAAIqJ,kBAAkB;QACpB,IAAIX,cAAclC,WAAW,EAAE;YAC7B7D,QAAQ+G,GAAG,CAAC,CAAC,4BAA4B,EAAE1J,UAAU,mBAAmB,CAAC;QAC3E;QACA,IAAI0I,cAAc1C,OAAO,EAAE;YACzBrD,QAAQ+G,GAAG,CACT3D,gBAAgBF,OAAOD,UAAU,IAC7B,CAAC,SAAS,EAAE/F,YAAY,MAAM,EAAEG,UAAU,YAAY,CAAC,GACvD,CAAC,OAAO,EAAEH,YAAY,YAAY,CAAC;QAE3C;IACF;IACA,MAAM8J,YAAY;WACZtL,qBAAqB;YAAC;SAAsB,GAAG,EAAE;WACjDoD,YAAY;YAAC;SAAY,GAAG,EAAE;KACnC;IACDkB,QAAQ+G,GAAG,CACT,CAAC,mBAAmB,EAAEtL,SAASiB,IAAI,CAAC,OAAO,GACzCsK,UAAUvK,GAAG,CAAC,CAACwK,WAAa,CAAC,IAAI,EAAEA,SAAS,CAAC,CAAC,EAAEvK,IAAI,CAAC;IAEzD,IAAI6E,QAAQ/E,MAAM,EAAE;QAClBwD,QAAQ+G,GAAG,CAAC,CAAC,WAAW,EAAE1J,UAAU,GAAG,EAAEkE,QAAQ7E,IAAI,CAAC,OAAO;IAC/D;IACA,IAAI8E,QAAQhF,MAAM,EAAE;QAClBwD,QAAQ+G,GAAG,CAAC,CAAC,wBAAwB,EAAEvF,QAAQ9E,IAAI,CAAC,OAAO;IAC7D;IACA,IAAIyJ,0BAA0B;QAC5B,MAAM/F,qCAAqC8F,kBAAkB7I,WAAW5B;IAC1E;IACA,IAAI6K,+BAA+B3J,cAAc;QAC/C,MAAM+D,qCAAqC2F,qBAAqBhJ;IAClE;IACA,IAAI3B,sBAAsB4K,6BAA6B;QACrD,MAAMtF,wCAAwCqF,qBAAqBhJ;IACrE;IACA,IAAId,gBAAgBC,MAAM,GAAG,KAAK8J,6BAA6B;QAC7D,MAAMrF,2CACJoF,qBACAhJ,WACAd;IAEJ;IACAyD,QAAQ+G,GAAG,CACT,CAAC,eAAe,CAAC,GACf,CAAC,+BAA+B,CAAC,GACjC,CAAC,uBAAuB,CAAC,GACzB,CAAC,sEAAsE,CAAC,GACxE,CAAC,iEAAiE,CAAC;AAEzE"}
package/cli/src/index.ts CHANGED
@@ -8,6 +8,7 @@ type InitCommandOptions = {
8
8
  directory?: string;
9
9
  examples?: string[];
10
10
  visualIntelligence?: boolean;
11
+ donations?: boolean;
11
12
  };
12
13
 
13
14
  const TEMPLATES_DIRECTORY_NAME = 'templates';
@@ -42,10 +43,11 @@ async function runInitCommand(options: InitCommandOptions): Promise<void> {
42
43
  const interactive = isInteractive();
43
44
  const directory = normalizeDirectory(options.directory ?? options.dir);
44
45
  printScaffoldIntro(directory);
45
- const { examples, visualIntelligence } = await resolveExamplesAsync(
46
+ const { examples, visualIntelligence, donations } = await resolveExamplesAsync(
46
47
  interactive,
47
48
  options.examples,
48
- options.visualIntelligence ?? false
49
+ options.visualIntelligence ?? false,
50
+ options.donations ?? false
49
51
  );
50
52
 
51
53
  await runInit({
@@ -53,6 +55,7 @@ async function runInitCommand(options: InitCommandOptions): Promise<void> {
53
55
  directory,
54
56
  examples,
55
57
  visualIntelligence,
58
+ donations,
56
59
  templatesDir:
57
60
  process.env.EXPO_APP_INTENTS_TEMPLATES_DIR ??
58
61
  path.join(__dirname, '..', '..', TEMPLATES_DIRECTORY_NAME),
@@ -77,6 +80,11 @@ program
77
80
  '--visual-intelligence',
78
81
  'Extend the mail example with Spotlight indexing, a Transferable export, and an open intent.'
79
82
  )
83
+ .option(
84
+ '--donations',
85
+ 'Add native class extensions that let JavaScript donate the intents of the selected examples with ' +
86
+ 'donateIntentAsync().'
87
+ )
80
88
  .action(runInitCommand);
81
89
 
82
90
  program.parseAsync(process.argv).catch((error) => {