json 强制斜体

forced-italics-vscode
"editor.tokenColorCustomizations": {
    "textMateRules": [
      {
        "scope": [
          //following will be in italic (=FlottFlott)
          "comment",
          "entity.name.type.class", //class names
          "keyword", //import, export, return…
          "constant", //String, Number, Boolean…, this, super
          "storage.modifier", //static keyword
          "storage.type.class.js", //class keyword
        ],
        "settings": {
          "fontStyle": "italic"
        }
      },
      {
        "scope": [
          //following will be excluded from italics (VSCode has some defaults for italics)
          "invalid",
          "keyword.operator",
          "constant.numeric.css",
          "keyword.other.unit.px.css",
          "constant.numeric.decimal.js",
          "constant.numeric.json"
        ],
        "settings": {
          "fontStyle": ""
        }
      },
      // ? REMOVING BOLD =============================
      {
        "scope": [
          "keyword",
          "keyword.control",
          "keyword.operator",
          "keyword.other.template",
          "keyword.other.substitution",
          "storage.type.function.arrow",
          "constant.other.color",
          "punctuation.accessor",
          "entity.name.section",
          "storage.type.function.pug",
          "storage.type.function.python",
          "storage.type.annotation",
          "punctuation.bracket.angle",
          "keyword.other.new",
          "punctuation.separator.question-mark.cs",
          "storage.type.generic.wildcard",
          "source.go keyword.operator",
          "punctuation.separator.namespace",
          "constant.other.symbol.ruby punctuation.definition.constant.ruby",
          "variable.parameter",
          "support.function.builtin.rust",
          "storage.type.function.coffee",
          "source.cs entity.name.variable.parameter",
          "punctuation.separator.hash.cs",
          "constant.other.symbol.ruby punctuation.definition.constant.ruby",
          "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
          "meta.function.parameters variable.other",
          "keyword.declaration.scala",
          "entity.name.type.annotation.kotlin",
          "storage.type.objc",
          "parameter.variable.function",
          "markup punctuation.definition",
          "punctuation.section.directive",
          "punctuation.definition.preprocessor",
          "source.ruby punctuation.definition.variable",
          "punctuation.separator.method",
          "support.function.textbf",
          "source.graphql support.type.builtin",
          "source.ocaml variable.interpolation string",
          "meta.function.constructor entity.name.function",
          "meta.function.destructor entity.name.function",
          "meta.function.parameters variable punctuation.definition.variable.php",
          "source.wsd keyword.other.activity"
        ],
        "settings": {
          "fontStyle": ""
        }
      },
    ]
  },

json Windows 10预览ayarları

Windows 10预览ayarları

profiles.json
{
  "globals": {
    "alwaysShowTabs": true,
    "copyOnSelect": false,
    "defaultProfile": "{d668b08d-6388-4fca-a492-593b2126aaf4}",
    "initialCols": 89,
    "initialRows": 29,
    "keybindings": [
      {
        "command": "closePane",
        "keys": ["ctrl+shift+w"]
      },
      {
        "command": "copy",
        "keys": ["ctrl+shift+c"]
      },
      {
        "command": "duplicateTab",
        "keys": ["ctrl+shift+d"]
      },
      {
        "command": "newTab",
        "keys": ["ctrl+shift+t"]
      },
      {
        "command": "newTabProfile0",
        "keys": ["ctrl+shift+1"]
      },
      {
        "command": "newTabProfile1",
        "keys": ["ctrl+shift+2"]
      },
      {
        "command": "newTabProfile2",
        "keys": ["ctrl+shift+3"]
      },
      {
        "command": "newTabProfile3",
        "keys": ["ctrl+shift+4"]
      },
      {
        "command": "newTabProfile4",
        "keys": ["ctrl+shift+5"]
      },
      {
        "command": "newTabProfile5",
        "keys": ["ctrl+shift+6"]
      },
      {
        "command": "newTabProfile6",
        "keys": ["ctrl+shift+7"]
      },
      {
        "command": "newTabProfile7",
        "keys": ["ctrl+shift+8"]
      },
      {
        "command": "newTabProfile8",
        "keys": ["ctrl+shift+9"]
      },
      {
        "command": "nextTab",
        "keys": ["ctrl+tab"]
      },
      {
        "command": "openNewTabDropdown",
        "keys": ["ctrl+shift+space"]
      },
      {
        "command": "openSettings",
        "keys": ["ctrl+,"]
      },
      {
        "command": "paste",
        "keys": ["ctrl+shift+v"]
      },
      {
        "command": "prevTab",
        "keys": ["ctrl+shift+tab"]
      },
      {
        "command": "scrollDown",
        "keys": ["ctrl+shift+down"]
      },
      {
        "command": "scrollDownPage",
        "keys": ["ctrl+shift+pgdn"]
      },
      {
        "command": "scrollUp",
        "keys": ["ctrl+shift+up"]
      },
      {
        "command": "scrollUpPage",
        "keys": ["ctrl+shift+pgup"]
      },
      {
        "command": "switchToTab0",
        "keys": ["ctrl+alt+1"]
      },
      {
        "command": "switchToTab1",
        "keys": ["ctrl+alt+2"]
      },
      {
        "command": "switchToTab2",
        "keys": ["ctrl+alt+3"]
      },
      {
        "command": "switchToTab3",
        "keys": ["ctrl+alt+4"]
      },
      {
        "command": "switchToTab4",
        "keys": ["ctrl+alt+5"]
      },
      {
        "command": "switchToTab5",
        "keys": ["ctrl+alt+6"]
      },
      {
        "command": "switchToTab6",
        "keys": ["ctrl+alt+7"]
      },
      {
        "command": "switchToTab7",
        "keys": ["ctrl+alt+8"]
      },
      {
        "command": "switchToTab8",
        "keys": ["ctrl+alt+9"]
      }
    ],
    "requestedTheme": "system",
    "showTabsInTitlebar": true,
    "showTerminalTitleInTitlebar": true,
    "wordDelimiters": " ./\\()\"'-:,.;<>~!@#$%^&*|+=[]{}~?\u2502"
  },
  "profiles": [
    {
      "acrylicOpacity": 0.95,
      "closeOnExit": true,
      "colorScheme": "Campbell",
      "commandline": "bash.exe",
      "cursorColor": "#FFFFFF",
      "cursorShape": "bar",
      "fontFace": "Consolas",
      "fontSize": 10,
      "guid": "{d668b08d-6388-4fca-a492-593b2126aaf4}",
      "historySize": 9001,
      "icon": "%USERPROFILE%\\Google Drive\\Pictures\\Icons\\Png\\bash.png",
      "name": "Bash",
      "padding": "0, 0, 0, 0",
      "snapOnInput": true,
      "startingDirectory": "%USERPROFILE%",
      "useAcrylic": true
    },
    {
      "acrylicOpacity": 0.95,
      "closeOnExit": true,
      "colorScheme": "Campbell",
      "commandline": "cmd.exe",
      "cursorColor": "#FFFFFF",
      "cursorShape": "bar",
      "fontFace": "Consolas",
      "fontSize": 10,
      "guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
      "historySize": 9001,
      "icon": "ms-appx:///ProfileIcons/{0caa0dad-35be-5f56-a8ff-afceeeaa6101}.png",
      "name": "Cmd",
      "padding": "0, 0, 0, 0",
      "snapOnInput": true,
      "startingDirectory": "%USERPROFILE%",
      "useAcrylic": true
    },
    {
      "acrylicOpacity": 0.95,
      "closeOnExit": true,
      "colorScheme": "Campbell",
      "commandline": "python.exe",
      "cursorColor": "#FFFFFF",
      "cursorShape": "bar",
      "fontFace": "Consolas",
      "fontSize": 10,
      "guid": "{1b9ac54b-10ef-4092-8f29-5d4f26c58bd7}",
      "historySize": 9001,
      "icon": "%USERPROFILE%\\Google Drive\\Pictures\\Icons\\Png\\python.png",
      "name": "Python",
      "padding": "0, 0, 0, 0",
      "snapOnInput": true,
      "startingDirectory": "%USERPROFILE%",
      "useAcrylic": true
    },
    {
      "acrylicOpacity": 0.95,
      "background": "#012456",
      "closeOnExit": true,
      "colorScheme": "Campbell",
      "commandline": "powershell.exe",
      "cursorColor": "#FFFFFF",
      "cursorShape": "bar",
      "fontFace": "Consolas",
      "fontSize": 10,
      "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
      "historySize": 9001,
      "icon": "ms-appx:///ProfileIcons/{61c54bbd-c2c6-5271-96e7-009a87ff44bf}.png",
      "name": "Windows PowerShell",
      "padding": "0, 0, 0, 0",
      "snapOnInput": true,
      "startingDirectory": "%USERPROFILE%",
      "useAcrylic": false
    },
    {
      "acrylicOpacity": 0.95,
      "closeOnExit": false,
      "colorScheme": "Vintage",
      "commandline": "Azure",
      "connectionType": "{d9fcfdfa-a479-412c-83b7-c5640e61cd62}",
      "cursorColor": "#FFFFFF",
      "cursorShape": "bar",
      "fontFace": "Consolas",
      "fontSize": 10,
      "guid": "{b453ae62-4e3d-5e58-b989-0a998ec441b8}",
      "historySize": 9001,
      "icon": "ms-appx:///ProfileIcons/{b453ae62-4e3d-5e58-b989-0a998ec441b8}.png",
      "name": "Azure Cloud Shell",
      "padding": "0, 0, 0, 0",
      "snapOnInput": true,
      "startingDirectory": "%USERPROFILE%",
      "useAcrylic": true
    }
  ],
  "schemes": [
    {
      "background": "#0C0C0C",
      "black": "#0C0C0C",
      "blue": "#0037DA",
      "brightBlack": "#767676",
      "brightBlue": "#3B78FF",
      "brightCyan": "#61D6D6",
      "brightGreen": "#16C60C",
      "brightPurple": "#B4009E",
      "brightRed": "#E74856",
      "brightWhite": "#F2F2F2",
      "brightYellow": "#F9F1A5",
      "cyan": "#3A96DD",
      "foreground": "#CCCCCC",
      "green": "#13A10E",
      "name": "Campbell",
      "purple": "#881798",
      "red": "#C50F1F",
      "white": "#CCCCCC",
      "yellow": "#C19C00"
    },
    {
      "background": "#000000",
      "black": "#000000",
      "blue": "#000080",
      "brightBlack": "#808080",
      "brightBlue": "#0000FF",
      "brightCyan": "#00FFFF",
      "brightGreen": "#00FF00",
      "brightPurple": "#FF00FF",
      "brightRed": "#FF0000",
      "brightWhite": "#FFFFFF",
      "brightYellow": "#FFFF00",
      "cyan": "#008080",
      "foreground": "#C0C0C0",
      "green": "#008000",
      "name": "Vintage",
      "purple": "#800080",
      "red": "#800000",
      "white": "#C0C0C0",
      "yellow": "#808000"
    },
    {
      "background": "#282C34",
      "black": "#282C34",
      "blue": "#61AFEF",
      "brightBlack": "#5A6374",
      "brightBlue": "#61AFEF",
      "brightCyan": "#56B6C2",
      "brightGreen": "#98C379",
      "brightPurple": "#C678DD",
      "brightRed": "#E06C75",
      "brightWhite": "#DCDFE4",
      "brightYellow": "#E5C07B",
      "cyan": "#56B6C2",
      "foreground": "#DCDFE4",
      "green": "#98C379",
      "name": "One Half Dark",
      "purple": "#C678DD",
      "red": "#E06C75",
      "white": "#DCDFE4",
      "yellow": "#E5C07B"
    },
    {
      "background": "#FAFAFA",
      "black": "#383A42",
      "blue": "#0184BC",
      "brightBlack": "#4F525D",
      "brightBlue": "#61AFEF",
      "brightCyan": "#56B5C1",
      "brightGreen": "#98C379",
      "brightPurple": "#C577DD",
      "brightRed": "#DF6C75",
      "brightWhite": "#FFFFFF",
      "brightYellow": "#E4C07A",
      "cyan": "#0997B3",
      "foreground": "#383A42",
      "green": "#50A14F",
      "name": "One Half Light",
      "purple": "#A626A4",
      "red": "#E45649",
      "white": "#FAFAFA",
      "yellow": "#C18301"
    },
    {
      "background": "#002B36",
      "black": "#073642",
      "blue": "#268BD2",
      "brightBlack": "#002B36",
      "brightBlue": "#839496",
      "brightCyan": "#93A1A1",
      "brightGreen": "#586E75",
      "brightPurple": "#6C71C4",
      "brightRed": "#CB4B16",
      "brightWhite": "#FDF6E3",
      "brightYellow": "#657B83",
      "cyan": "#2AA198",
      "foreground": "#839496",
      "green": "#859900",
      "name": "Solarized Dark",
      "purple": "#D33682",
      "red": "#DC322F",
      "white": "#EEE8D5",
      "yellow": "#B58900"
    },
    {
      "background": "#FDF6E3",
      "black": "#073642",
      "blue": "#268BD2",
      "brightBlack": "#002B36",
      "brightBlue": "#839496",
      "brightCyan": "#93A1A1",
      "brightGreen": "#586E75",
      "brightPurple": "#6C71C4",
      "brightRed": "#CB4B16",
      "brightWhite": "#FDF6E3",
      "brightYellow": "#657B83",
      "cyan": "#2AA198",
      "foreground": "#657B83",
      "green": "#859900",
      "name": "Solarized Light",
      "purple": "#D33682",
      "red": "#DC322F",
      "white": "#EEE8D5",
      "yellow": "#B58900"
    }
  ]
}

json Atom片段JS

片段javascript

javascript
{
	// Place your snippets for javascript here. Each snippet is defined under a snippet name and has a prefix, body and 
	// description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
	// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the 
	// same ids are connected.
	// Example:
	// "Print to console": {
	// 	"prefix": "log",
	// 	"body": [
	// 		"console.log('$1');",
	// 		"$2"
	// 	],
	// 	"description": "Log output to console"
	// }
	"Commentario": {
		"prefix": "///",
		"body": [
			"///////////////////////////////////////////////////////////////////////",
			"// $1",
			"///////////////////////////////////////////////////////////////////////",
			"$2"
		],
		"description": "Comentario"
	}
	"Console log": {
		"prefix": "console log",
		"body": [
			"console.log('$1');",
			"$2"
		],
		"description": "Comentario"
	}
}

json JSON经验

experiences
[{
    "title": "Digital Bank",
    "details": [
      "Desarrollo de paginas web",
      "Desarrollo de aplicaciones mobiles"
    ]
  },
  {
    "title": "Digital Bank",
    "details": [
      "Desarrollo de paginas web",
      "Desarrollo de aplicaciones mobiles"
    ]
  }
]

json 创建React和TypeScript项目

创建React和TypeScript项目

1zsh
npm init
npm install typescript --save-dev
tsconfig.json
{ 
  "compilerOptions": { 
    "target": "es5", 
    "module": "es6", 
    "moduleResolution": "node", 
    "lib": ["es6", "dom"],
    "sourceMap": true, 
    "jsx": "react", 
    "strict": true, 
    "noImplicitReturns": true,
    "rootDir": "src",
    "outDir": "dist",
  },
  "include": ["**/*.ts", "**/*.tsx"],
  "exclude": ["node_modules"]
}
2zsh
 npm install tslint --save-dev
tslint.json
{
  "extends": ["tslint:recommended", "tslint-react", "tslint-config-prettier"],
  "linterOptions": {
    "exclude": ["node_modules/**/*.ts"]
  }
}
3zsh
npm install react react-dom
npm install @types/react @types/react-dom --save-dev
index.html
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8"/>
</head>
<body>
  <div id="root"></div>
  <script src="bundle.js"></script>
</body>
</html>
index.tsx
import * as React from "react";

const App: React.FC = () => {
  return <h1>My React App!</h1>;
};
4zsh
npm install webpack webpack-cli --save-dev
npm install webpack webpack-dev-server --save-dev
npm install ts-loader --save-dev
webpack.config.js
const path = require("path");

module.exports = {
  entry: "./src/index.tsx",
  module: {
    rules: [
      {
        test: /\.tsx?$/,
        use: "ts-loader",
        exclude: /node_modules/
      }
    ]
  },
  resolve: {
    extensions: [".tsx", ".ts", ".js"]
  },
  output: {
    path: path.resolve(__dirname, "dist"),
    filename: "bundle.js"
  },
  devServer: {
    contentBase: path.join(__dirname, "dist"),
    compress: true,
    port: 9000
  }
};
package.json
  ...
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "webpack-dev-server --mode=development",
    "build": "webpack --mode=production"
  },
  ...

json Setar cokies com Puppeter

index.js
async function setCookies(page, cookiePath) {
  let cookies = [];

  if (fs.existsSync(cookiePath)) {
    cookies = JSON.parse(fs.readFileSync(cookiePath));
  }

  cookies = cookies.map(cookie => {
    cookie.url = "http://" + cookie.domain + ":3001";
    delete cookie.domain;
    return cookie;
  });

  return Promise.all(
    cookies.map(async cookie => {
      await page.setCookie(cookie);
    })
  );
}

// Uso - page vem do pupeter e cokiepath é o endereço da pasta do cokie.json
await setCookies(page, scenario.cookiePath);
cokies.json
[{
    "domain": "localhost",
    "path": "/",
    "name": "AXXX",
    "value": "0",
    "hostOnly": false,
    "httpOnly": false,
    "secure": false,
    "session": false,
    "sameSite": "no_restriction"
  },
  {
    "domain": "localhost",
    "path": "/",
    "name": "AXXXS",
    "value": "0",
    "hostOnly": false,
    "httpOnly": false,
    "secure": false,
    "session": false,
    "sameSite": "no_restriction"
  }
]

json 版本化资产(强制清除缓存)

webpack.mix.js
const mix = require('laravel-mix');

/*
 |--------------------------------------------------------------------------
 | Mix Asset Management
 |--------------------------------------------------------------------------
 |
 | Mix provides a clean, fluent API for defining some Webpack build steps
 | for your Laravel application. By default, we are compiling the Sass
 | file for the application as well as bundling up all the JS files.
 |
 */

mix.js('resources/js/app.js', 'public/js')
    .sass('resources/sass/app.scss', 'public/css')
    .version();
layout.blade.php
<link href="{{ mix('css/app.css') }}" rel="stylesheet" type="text/css" />
mix-manifest.json
{
    "/js/app.js": "/js/app.js?id=c40c1ff08a7aea153d07",
    "/css/app.css": "/css/app.css?id=864742dbc29a6d93d913"
}

json xenapi的例子

notebook.ipynb
import XenAPI
import json
s = XenAPI.Session("http://10.158.180.212")
s.login_with_password("root", "xenroot")
uuid = 'f7500c35-192d-882a-ee8d-1323ecce4cac'
vm = s.xenapi.VM.get_by_uuid(uuid)
s.xenapi.VM.get_power_state(vm)

json 添加单元格组件

添加基本​​单元组件

javascript.json
Add component in configuration": {
		"scope": "javascript, json",
		"prefix": "cells: add_component",
		"body": [
			"{",
			"\tzone: '${1|app__header,app__main,app__footer,app__complementary,app__overlay,app__transactional|}',",
			"\ttype: '${2|UI,DM,CC|}',",
			"\ttag: '${3:COMPONENT}',",
			"\tproperties: {",
			"\t\tcellsConnections: {",
			"\t\t\tin: {",
			"\t\t\t\t'${4:CHANNEL_NAME_IN}': {",
			"\t\t\t\t\tbind: '${5:FUNCTION_NAME}'",
			"\t\t\t\t}",
			"\t\t\t},",
			"\t\t\tout: {",
			"\t\t\t\t'${6:CHANNEL_NAME_OUT}': {",
			"\t\t\t\t\tbind: '${7:EVENT_NAME}'",
			"\t\t\t\t}",
			"\t\t\t}",
			"\t\t}",
			"\t}",
			"}"
		],
		"description": "Add new component in json, js config"
	}

json 创建单元格页面

创建基本单元格页面支架

javascript.json
	"Add page in configuration": {
    "scope": "javascript, json",
		"prefix": "cells: add_page",
		"body": [
			"'use strict';",
			"",
			"module.exports = CONFIG => {",
			"  const utils = require('./common/_utils');",
			"  const pages = require('./common/_pages')(CONFIG)('${1}');",
			"const COUNTRY = utils.getCountry(CONFIG);",
			"const SPINNER = utils.SPINNER(CONFIG);",
			"const isNativeIos = CONFIG.nativeIos || false;",
			"",
			"  const base = {",
			"    hash: '${1}',",
			"    currentPage: {",
			"      url: '/${2}',",
			"      params: []",
			"    },",
			"    pages: pages,",
			"    template: {",
			"      tag: 'cells-template-coronita',",
			"      properties: {",
			"        drawerWidth: '100%',",
			"        disableScrollLock: true,",
			"        hasFooter: true,",
			"        footerHeight: 100,",
			"        disableEdgeSwipe: true,",
			"        headerFixed: true,",
			"        extraHeaderClass: 'dark-blue-bg',",
			"        className: isNativeIos ? 'ios-top-padding' : ''",
			"      },",
			"      analytics: {",
			"        action: 'page-view',",
			"        digitalData: {",
			"          'page.pageInfo.pageSegment': '${1}',",
			"          'page.pageInfo.url': '/${2}',",
			"          'page.pageInfo.sysEnv': 'web-movil',",
			"          'page.pageInfo.language': 'ES',",
			"          'page.pageInfo.pageIntent': 'Informacion',",
			"          'page.pageInfo.channel': 'online',",
			"          'user.userState': 'no logado',",
			"          'user.country': COUNTRY",
			"        }",
			"      }",
			"    },",
			"",
			"    components: [",
			"      {",
			"        zone: 'app__main',",
			"        tag: 'cells-handle-life-cycle',",
			"        type: 'UI',",
			"        properties: {",
			"          pageName: '${1}',",
			"          customInitEvents: {",
			"            'swipe-menu-enabled': false",
			"          },",
			"          cellsConnections: {",
			"            in: {",
			"              __bridge_app: {",
			"                bind: 'navigation'",
			"              },",
			"              __bridge_page_${1}: {",
			"                bind: 'init'",
			"              }",
			"            },",
			"            out: {",
			"              ${3}_reset_page: {",
			"                bind: 'reset'",
			"              },",
			"              ${3}_init_page: {",
			"                bind: 'init-page'",
			"              },",
			"              global_enable_menu_swipe: {",
			"                bind: 'swipe-menu-enabled',",
			"                'forward-to-native': true",
			"              }",
			"            }",
			"          }",
			"        }",
			"      },",
			"      {",
			"        zone: 'app__header',",
			"        type: 'UI',",
			"        tag: 'cells-molecule-header',",
			"        properties: {",
			"          className: 'header--dark',",
			"          leftIcon: 'coronita:return-12',",
			"          titleName: 'glomo-${4}-header-title',",
			"          cellsConnections: {",
			"            in: {},",
			"            out: {",
			"              navigation_${5}_to_page: {",
			"                bind: 'click-left-button'",
			"              }",
			"            },",
			"          }",
			"        }",
			"      },",
			"      {",
			"        zone: 'app__header',",
			"        type: 'UI',",
			"        tag: 'glomo-navigation-handler',",
			"        properties: {",
			"          backAction: 'header-left-button',",
			"          continue: 'dashboard',",
			"          cellsConnections: {",
			"            in: {",
			"              navigation_${5}_to_continue: {",
			"                bind: 'navigate'",
			"              },",
			"              navigation_${5}_to_page: {",
			"                bind: 'navigate'",
			"              }",
			"            },",
			"            out: {",
			"              navigation_${5}_to_dashboard: {",
			"                bind: 'navigation-to-dashboard-logged',",
			"                link: {",
			"                  page: 'dashboard'",
			"                }",
			"              },",
			"              navigation_${5}_to_login: {",
			"                bind: 'navigation-to-dashboard',",
			"                link: {",
			"                  page: 'login'",
			"                }",
			"              }",
			"            },",
			"          }",
			"        }",
			"      },",
			"",
			"    ]",
			"  };",
			"",
			"  base.components.push({",
			"    zone: 'app__main',",
			"    tag: 'COMPONENT',",
			"    type: 'DM',",
			"    properties: {",
			"      cellsConnections: {",
			"        in: {",
			"          'CHANNEL_NAME_IN': {",
			"            bind: 'FUNCTION_NAME'",
			"          }",
			"        },",
			"        out: {",
			"          'CHANNEL_NAME_OUT': {",
			"            bind: 'EVENT_NAME'",
			"          }",
			"        }",
			"      }",
			"    }",
			"  });",
			"",
			"  return base;",
			"};",
			""
		],
		"description": "Add generic Cells page"
	}