gitextract_1q8uhr3u/ ├── .gemini/ │ ├── GEMINI.md │ ├── config.yaml │ └── settings.json ├── .github/ │ ├── CODEOWNERS │ ├── ISSUE_TEMPLATE.md │ ├── linters/ │ │ ├── .htmlhintrc │ │ ├── .yaml-lint.yml │ │ └── sun_checks.xml │ ├── pull_request_template.md │ ├── scripts/ │ │ ├── biome-gs.ts │ │ ├── check-gs.ts │ │ └── clasp_push.sh │ ├── snippet-bot.yml │ ├── sync-repo-settings.yaml │ └── workflows/ │ ├── automation.yml │ ├── lint.yml │ ├── publish.yaml │ └── test.yml ├── .gitignore ├── .vscode/ │ ├── extensions.json │ └── settings.json ├── CONTRIBUTING.md ├── GEMINI.md ├── LICENSE ├── README.md ├── SECURITY.md ├── adminSDK/ │ ├── directory/ │ │ └── quickstart.gs │ ├── reports/ │ │ └── quickstart.gs │ └── reseller/ │ └── quickstart.gs ├── advanced/ │ ├── README.md │ ├── adminSDK.gs │ ├── adsense.gs │ ├── analytics.gs │ ├── analyticsAdmin.gs │ ├── analyticsData.gs │ ├── bigquery.gs │ ├── calendar.gs │ ├── chat.gs │ ├── classroom.gs │ ├── displayvideo.gs │ ├── docs.gs │ ├── doubleclick.gs │ ├── doubleclickbidmanager.gs │ ├── drive.gs │ ├── driveActivity.gs │ ├── driveLabels.gs │ ├── events.gs │ ├── gmail.gs │ ├── iot.gs │ ├── people.gs │ ├── sheets.gs │ ├── shoppingContent.gs │ ├── slides.gs │ ├── tagManager.gs │ ├── tasks.gs │ ├── test_adminSDK.gs │ ├── test_adsense.gs │ ├── test_analytics.gs │ ├── test_bigquery.gs │ ├── test_calendar.gs │ ├── test_classroom.gs │ ├── test_displayvideo.gs │ ├── test_docs.gs │ ├── test_doubleclick.gs │ ├── test_doubleclickbidmanager.gs │ ├── test_drive.gs │ ├── test_gmail.gs │ ├── test_people.gs │ ├── test_sheets.gs │ ├── test_shoppingContent.gs │ ├── test_slides.gs │ ├── test_tagManager.gs │ ├── test_tasks.gs │ ├── test_youtube.gs │ ├── test_youtubeAnalytics.gs │ ├── test_youtubeContentId.gs │ ├── youtube.gs │ ├── youtubeAnalytics.gs │ └── youtubeContentId.gs ├── ai/ │ ├── autosummarize/ │ │ ├── README.md │ │ ├── appsscript.json │ │ ├── gemini.js │ │ ├── main.js │ │ ├── sidebar.html │ │ └── summarize.js │ ├── custom-func-ai-agent/ │ │ ├── AiVertex.js │ │ ├── Code.js │ │ ├── README.md │ │ └── appsscript.json │ ├── custom-func-ai-studio/ │ │ ├── Code.js │ │ ├── README.md │ │ ├── appsscript.json │ │ └── gemini.js │ ├── custom_func_vertex/ │ │ ├── Code.js │ │ ├── README.md │ │ ├── aiVertex.js │ │ └── appsscript.json │ ├── devdocs-link-preview/ │ │ ├── Cards.js │ │ ├── Helpers.js │ │ ├── Main.js │ │ ├── README.md │ │ ├── Vertex.js │ │ └── appsscript.json │ ├── drive-rename/ │ │ ├── README.md │ │ ├── ai.js │ │ ├── appsscript.json │ │ ├── drive.js │ │ ├── main.js │ │ └── ui.js │ ├── email-classifier/ │ │ ├── Cards.gs │ │ ├── ClassifyEmail.gs │ │ ├── Code.gs │ │ ├── Constants.gs │ │ ├── DraftEmail.gs │ │ ├── Labels.gs │ │ ├── README.md │ │ ├── Sheet.gs │ │ └── appsscript.json │ ├── gmail-sentiment-analysis/ │ │ ├── Cards.gs │ │ ├── Code.gs │ │ ├── Gmail.gs │ │ ├── README.md │ │ ├── Vertex.gs │ │ └── appsscript.json │ └── standup-chat-app/ │ ├── README.md │ ├── appsscript.json │ ├── db.js │ ├── gemini.js │ ├── main.js │ └── memoize.js ├── apps-script/ │ └── execute/ │ └── target.js ├── biome.json ├── calendar/ │ └── quickstart/ │ └── quickstart.gs ├── chat/ │ ├── advanced-service/ │ │ ├── AppAuthenticationUtils.gs │ │ ├── Main.gs │ │ ├── README.md │ │ └── appsscript.json │ └── quickstart/ │ ├── Code.gs │ ├── README.md │ └── appsscript.json ├── classroom/ │ ├── quickstart/ │ │ └── quickstart.gs │ └── snippets/ │ ├── addAlias.gs │ ├── courseUpdate.gs │ ├── createAlias.gs │ ├── createCourse.gs │ ├── getCourse.gs │ ├── listCourses.gs │ ├── patchCourse.gs │ └── test_classroom_snippets.gs ├── data-studio/ │ ├── appsscript.json │ ├── appsscript2.json │ ├── auth.gs │ ├── build.gs │ ├── caas.gs │ ├── data-source.gs │ ├── errors.gs │ ├── links.gs │ ├── manifest.gs │ └── semantics.gs ├── docs/ │ ├── README.md │ ├── cursorInspector/ │ │ ├── README.md │ │ ├── cursorInspector.gs │ │ ├── sidebar.css.html │ │ ├── sidebar.html │ │ └── sidebar.js.html │ ├── dialog2sidebar/ │ │ ├── Code.gs │ │ ├── Dialog.html │ │ ├── Intercom.js.html │ │ ├── README.md │ │ └── Sidebar.html │ ├── quickstart/ │ │ └── quickstart.gs │ └── translate/ │ ├── README.md │ ├── sidebar.html │ └── translate.gs ├── drive/ │ ├── activity/ │ │ └── quickstart.gs │ ├── activity-v2/ │ │ └── quickstart.gs │ └── quickstart/ │ └── quickstart.gs ├── forms/ │ ├── README.md │ └── notifications/ │ ├── README.md │ ├── about.html │ ├── authorizationEmail.html │ ├── creatorNotification.html │ ├── notification.gs │ ├── respondentNotification.html │ └── sidebar.html ├── forms-api/ │ ├── demos/ │ │ └── AppsScriptFormsAPIWebApp/ │ │ ├── Code.gs │ │ ├── FormsAPI.gs │ │ ├── Main.html │ │ ├── README.md │ │ └── appsscript.json │ └── snippets/ │ ├── README.md │ └── retrieve_all_responses.gs ├── gmail/ │ ├── README.md │ ├── add-ons/ │ │ ├── appsscript.json │ │ └── quickstart.gs │ ├── inlineimage/ │ │ └── inlineimage.gs │ ├── markup/ │ │ ├── Code.gs │ │ └── mail_template.html │ ├── quickstart/ │ │ └── quickstart.gs │ └── sendingEmails/ │ └── sendingEmails.gs ├── gmail-sentiment-analysis/ │ ├── .clasp.json │ ├── Cards.gs │ ├── Code.gs │ ├── Gmail.gs │ ├── README.md │ ├── Vertex.gs │ └── appsscript.json ├── mashups/ │ ├── sheets2calendar.gs │ ├── sheets2chat.gs │ ├── sheets2contacts.gs │ ├── sheets2docs.gs │ ├── sheets2drive.gs │ ├── sheets2forms.gs │ ├── sheets2gmail.gs │ ├── sheets2maps.gs │ ├── sheets2slides.gs │ └── sheets2translate.gs ├── package.json ├── people/ │ └── quickstart/ │ └── quickstart.gs ├── picker/ │ ├── README.md │ ├── appsscript.json │ ├── code.gs │ └── dialog.html ├── pnpm-workspace.yaml ├── service/ │ ├── jdbc.gs │ ├── propertyService.gs │ ├── test_jdbc.gs │ └── test_propertyServices.gs ├── sheets/ │ ├── README.md │ ├── api/ │ │ ├── helpers.gs │ │ ├── spreadsheet_snippets.gs │ │ └── test_spreadsheet_snippets.gs │ ├── customFunctions/ │ │ ├── btc.gs │ │ └── customFunctions.gs │ ├── dateAddAndSubtract/ │ │ ├── README.md │ │ ├── dateAddAndSubtract.gs │ │ └── moment.gs │ ├── forms/ │ │ └── forms.gs │ ├── maps/ │ │ └── maps.gs │ ├── next18/ │ │ ├── .claspignore │ │ ├── Constants.gs │ │ ├── Invoice.gs │ │ ├── LinkDialog.html │ │ ├── README.md │ │ ├── Salesforce.gs │ │ └── appsscript.json │ ├── quickstart/ │ │ └── quickstart.gs │ └── removingDuplicates/ │ └── removingDuplicates.gs ├── slides/ │ ├── README.md │ ├── SpeakerNotesScript/ │ │ ├── README.md │ │ ├── appscript.json │ │ └── scriptGen.gs │ ├── api/ │ │ ├── Helpers.gs │ │ ├── Snippets.gs │ │ └── Tests.gs │ ├── imageSlides/ │ │ ├── add_image/ │ │ │ └── add_image.gs │ │ ├── add_image_slide/ │ │ │ └── add_image_slide.gs │ │ ├── create/ │ │ │ └── create.gs │ │ ├── full/ │ │ │ └── full.gs │ │ └── main/ │ │ └── main.gs │ ├── progress/ │ │ └── progress.gs │ ├── quickstart/ │ │ └── quickstart.gs │ ├── selection/ │ │ └── selection.gs │ ├── style/ │ │ ├── style.gs │ │ └── test_style.gs │ └── translate/ │ ├── sidebar.html │ └── translate.gs ├── solutions/ │ ├── add-on/ │ │ ├── book-smartchip/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ └── share-macro/ │ │ ├── .clasp.json │ │ ├── Code.js │ │ ├── README.md │ │ ├── UI.js │ │ └── appsscript.json │ ├── automations/ │ │ ├── agenda-maker/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── aggregate-document-content/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── Menu.js │ │ │ ├── README.md │ │ │ ├── Setup.js │ │ │ ├── Utilities.js │ │ │ └── appsscript.json │ │ ├── bracket-maker/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── calendar-timesheet/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── Page.html │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── content-signup/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── course-feedback-response/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── employee-certificate/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── equipment-requests/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ ├── appsscript.json │ │ │ ├── new-equipment-request.html │ │ │ └── request-complete.html │ │ ├── event-session-signup/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── feedback-sentiment-analysis/ │ │ │ ├── .clasp.json │ │ │ ├── README.md │ │ │ ├── appsscript.json │ │ │ └── code.js │ │ ├── folder-creation/ │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appscript.json │ │ ├── generate-pdfs/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── Menu.js │ │ │ ├── README.md │ │ │ ├── Utilities.js │ │ │ └── appsscript.json │ │ ├── import-csv-sheets/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ ├── SampleData.js │ │ │ ├── SetupSample.js │ │ │ ├── Utilities.js │ │ │ └── appsscript.json │ │ ├── mail-merge/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── news-sentiment/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── offsite-activity-signup/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── tax-loss-harvest-alerts/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── timesheets/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── upload-files/ │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ ├── Setup.js │ │ │ └── appsscript.json │ │ ├── vacation-calendar/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ └── youtube-tracker/ │ │ ├── .clasp.json │ │ ├── Code.js │ │ ├── README.md │ │ ├── appsscript.json │ │ └── email.html │ ├── custom-functions/ │ │ ├── calculate-driving-distance/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ ├── summarize-sheets-data/ │ │ │ ├── .clasp.json │ │ │ ├── Code.js │ │ │ ├── README.md │ │ │ └── appsscript.json │ │ └── tier-pricing/ │ │ ├── .clasp.json │ │ ├── Code.js │ │ ├── README.md │ │ └── appsscript.json │ ├── editor-add-on/ │ │ └── clean-sheet/ │ │ ├── .clasp.json │ │ ├── Code.js │ │ ├── Menu.js │ │ ├── README.md │ │ └── appsscript.json │ ├── ooo-assistant/ │ │ ├── .clasp.json │ │ ├── Chat.gs │ │ ├── Common.gs │ │ ├── README.md │ │ └── appsscript.json │ └── webhook-chat-app/ │ ├── README.md │ ├── thread-reply.gs │ └── webhook.gs ├── tasks/ │ ├── quickstart/ │ │ └── quickstart.gs │ └── simpleTasks/ │ ├── README.md │ ├── appsscript.json │ ├── javascript.html │ ├── page.html │ ├── simpleTasks.gs │ └── stylesheet.html ├── templates/ │ ├── README.md │ ├── custom-functions/ │ │ ├── Code.gs │ │ └── README.md │ ├── docs-addon/ │ │ ├── Code.gs │ │ ├── Dialog.html │ │ ├── DialogJavaScript.html │ │ ├── README.md │ │ ├── Sidebar.html │ │ ├── SidebarJavaScript.html │ │ └── Stylesheet.html │ ├── forms-addon/ │ │ ├── Code.gs │ │ ├── Dialog.html │ │ ├── DialogJavaScript.html │ │ ├── README.md │ │ ├── Sidebar.html │ │ ├── SidebarJavaScript.html │ │ └── Stylesheet.html │ ├── sheets-addon/ │ │ ├── Code.gs │ │ ├── Dialog.html │ │ ├── DialogJavaScript.html │ │ ├── README.md │ │ ├── Sidebar.html │ │ ├── SidebarJavaScript.html │ │ └── Stylesheet.html │ ├── sheets-import/ │ │ ├── APICode.gs │ │ ├── Auth.gs │ │ ├── AuthCallbackView.html │ │ ├── AuthorizationEmail.html │ │ ├── Configurations.gs │ │ ├── JavaScript.html │ │ ├── README.md │ │ ├── Server.gs │ │ ├── Sidebar.html │ │ ├── Stylesheet.html │ │ ├── Utilities.gs │ │ └── intercom.js.html │ ├── standalone/ │ │ └── helloWorld.gs │ └── web-app/ │ ├── Code.gs │ ├── Index.html │ ├── JavaScript.html │ ├── README.md │ └── Stylesheet.html ├── triggers/ │ ├── form/ │ │ ├── AuthorizationEmail.html │ │ └── Code.gs │ ├── test_triggers.gs │ └── triggers.gs ├── tsconfig.json ├── ui/ │ ├── communication/ │ │ ├── basic/ │ │ │ ├── code.gs │ │ │ └── index.html │ │ ├── failure/ │ │ │ ├── code.gs │ │ │ └── index.html │ │ ├── private/ │ │ │ ├── code.gs │ │ │ └── index.html │ │ ├── runner.gs │ │ └── success/ │ │ ├── code.gs │ │ └── index.html │ ├── dialogs/ │ │ ├── alert/ │ │ │ └── alert.gs │ │ ├── custom_dialog/ │ │ │ ├── Page.html │ │ │ └── custom_dialog.gs │ │ ├── custom_sidebar/ │ │ │ ├── Page.html │ │ │ └── custom_sidebar.gs │ │ ├── menus.gs │ │ └── prompt/ │ │ └── prompt.gs │ ├── forms/ │ │ ├── code.gs │ │ └── index.html │ ├── html/ │ │ ├── printing_scriptlet.html │ │ ├── scriptlet.html │ │ └── standard_scriptlet.html │ ├── sidebar/ │ │ ├── code.gs │ │ └── index.html │ ├── user/ │ │ ├── code.gs │ │ └── index.html │ └── webapp/ │ ├── code.gs │ └── index.html ├── utils/ │ ├── logging.gs │ └── test_logging.gs └── wasm/ ├── README.md ├── hello-world/ │ ├── .clasp.json │ ├── .gitattributes │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── build.js │ ├── package.json │ ├── polyfill.js │ └── src/ │ ├── appsscript.json │ ├── lib.rs │ ├── main.js │ ├── test.js │ └── wasm.js ├── image-add-on/ │ ├── .clasp.json │ ├── .gitattributes │ ├── .gitignore │ ├── Cargo.toml │ ├── README.md │ ├── build.js │ ├── package.json │ ├── polyfill.js │ └── src/ │ ├── add-on.js │ ├── appsscript.json │ ├── lib.rs │ ├── main.js │ ├── test.js │ └── wasm.js └── python/ ├── .clasp.json ├── .gitattributes ├── .gitignore ├── Cargo.toml ├── README.md ├── build.js ├── package.json ├── polyfill.js └── src/ ├── appsscript.json ├── lib.rs ├── main.js ├── test.js └── wasm.js