{"id":15357696,"url":"https://github.com/oaphi/menuapp","last_synced_at":"2025-04-15T07:12:18.198Z","repository":{"id":37023717,"uuid":"294574413","full_name":"Oaphi/MenuApp","owner":"Oaphi","description":"Google Apps Script utility library for building custom menus","archived":false,"fork":false,"pushed_at":"2023-08-26T23:04:48.000Z","size":458,"stargazers_count":5,"open_issues_count":7,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-15T07:12:12.555Z","etag":null,"topics":["custom-menus","google-apps-script","menu","utility-library"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Oaphi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-09-11T02:32:56.000Z","updated_at":"2023-09-05T01:23:36.000Z","dependencies_parsed_at":"2023-02-15T19:30:39.014Z","dependency_job_id":null,"html_url":"https://github.com/Oaphi/MenuApp","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Oaphi%2FMenuApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Oaphi%2FMenuApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Oaphi%2FMenuApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Oaphi%2FMenuApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Oaphi","download_url":"https://codeload.github.com/Oaphi/MenuApp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249023735,"owners_count":21199961,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["custom-menus","google-apps-script","menu","utility-library"],"created_at":"2024-10-01T12:38:06.682Z","updated_at":"2025-04-15T07:12:18.163Z","avatar_url":"https://github.com/Oaphi.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![clasp](https://img.shields.io/badge/built%20with-clasp-4285f4.svg)](https://github.com/google/clasp)\n[![MIT License](https://img.shields.io/badge/license-MIT-blue.svg?style=flat)](LICENSE)\n\n# MenuApp\n\nMenuApp is a small library for building custom menus from JSON configuration.\n\n```javascript\nconst menu = MenuApp.buildMenu({\n    type: MenuApp.DocTypes.DOCUMENT,\n    title: \"My Menu\",\n    items: [\n        {\n            title: \"My Action\",\n            action: runMyAction.name,\n        },\n        MenuApp.createActionItem(\"Item from function\", myCallback),\n        {\n            title: \"Submenu\",\n            items: [\n                {\n                    title: \"My Second Action\",\n                    actions: \"MyLib.doSomething\",\n                },\n                MenuApp.createSeparatorItem(),\n            ],\n        },\n    ],\n    append: true,\n});\n```\n\nThe library exposes two utility enums accessible via `\u003cuser symbol\u003e.\u003cenum name\u003e`:\n\nParent document type: `DocTypes`\n\n| Value        |\n| ------------ |\n| SPREADSHEET  |\n| PRESENTATION |\n| FORM         |\n| DOCUMENT     |\n\nMenu item type (required if adding a special items): `ItemTypes`\n\n| Value     |\n| --------- |\n| MENU      |\n| ITEM      |\n| SEPARATOR |\n\n# Install\n\n\u003e Latest library version: 19\n\nIf developing locally, add the project info to manifest file's `dependencies.libraries` list:\n\n| Field             | Required | Value                                                                    |\n| ----------------- | -------- | ------------------------------------------------------------------------ |\n| `libraryId`       | yes      | `1wr0xwr-RgfP0j9acfpJy2ESd3q4oqgM2bt0mgOemhRGS-U2N1XDxRuYk`              |\n| `version`         | yes      | Library version you want to use                                          |\n| `userSymbol`      | no       | The library name, `MenuApp` by default                                   |\n| `developmentMode` | no       | Include the library in dev mode (will use any latest _unstable_ version) |\n\nSample JSON object to add:\n\n```json\n{\n    \"libraryId\": \"1wr0xwr-RgfP0j9acfpJy2ESd3q4oqgM2bt0mgOemhRGS-U2N1XDxRuYk\",\n    \"userSymbol\": \"MenuApp\",\n    \"version\": \"19\",\n    \"developmentMode\": false\n}\n```\n\nOtherwise, use the new online editor UI to add the library (the id is the same as in `libraryId`):\n\n![adding library via the online editor](./assets/library.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foaphi%2Fmenuapp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foaphi%2Fmenuapp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foaphi%2Fmenuapp/lists"}