├── .browserslistrc ├── .husky ├── .gitignore └── pre-push ├── .stlintrc ├── .env.example ├── .gitattributes ├── src ├── base │ ├── b-tree │ │ ├── index.js │ │ └── b-tree.styl │ ├── b-skeleton │ │ ├── index.js │ │ ├── README.md │ │ └── CHANGELOG.md │ ├── b-image │ │ ├── index.js │ │ └── interface.ts │ ├── b-router │ │ ├── index.js │ │ ├── b-router.styl │ │ ├── b-router.ss │ │ └── modules │ │ │ └── const.ts │ ├── b-sidebar │ │ └── index.js │ ├── b-dynamic-page │ │ ├── helpers │ │ │ └── index.ts │ │ ├── index.js │ │ ├── test │ │ │ └── b-scroll-element-dummy │ │ │ │ ├── index.js │ │ │ │ ├── b-scroll-element-dummy.ss │ │ │ │ └── b-scroll-element-dummy.styl │ │ └── b-dynamic-page.styl │ ├── b-remote-provider │ │ ├── index.js │ │ ├── b-remote-provider.styl │ │ ├── b-remote-provider.ss │ │ └── CHANGELOG.md │ ├── b-virtual-scroll │ │ ├── index.js │ │ └── b-virtual-scroll.styl │ ├── b-virtual-scroll-new │ │ ├── index.js │ │ ├── modules │ │ │ ├── observer │ │ │ │ └── const.ts │ │ │ └── slots │ │ │ │ └── interface.ts │ │ ├── b-virtual-scroll-new.styl │ │ └── interface │ │ │ └── index.ts │ ├── b-window │ │ ├── index.js │ │ ├── interface.ts │ │ └── test-dummy.window.ss │ ├── b-list │ │ ├── index.js │ │ └── b-list-ds.styl │ ├── b-bottom-slide │ │ ├── interface.ts │ │ ├── index.js │ │ ├── const.ts │ │ └── test │ │ │ └── index.js │ └── b-slider │ │ ├── index.js │ │ └── b-slider.styl ├── core │ ├── tslint.json │ ├── abt │ │ ├── README.md │ │ ├── CHANGELOG.md │ │ ├── const.ts │ │ └── engines │ │ │ └── index.ts │ ├── helpers │ │ ├── README.md │ │ └── index.ts │ ├── render │ │ ├── README.md │ │ └── interface.ts │ ├── component │ │ ├── ref │ │ │ ├── README.md │ │ │ └── CHANGELOG.md │ │ ├── hook │ │ │ └── README.md │ │ ├── engines │ │ │ ├── vue │ │ │ │ └── README.md │ │ │ ├── README.md │ │ │ ├── zero │ │ │ │ ├── context │ │ │ │ │ ├── interface.ts │ │ │ │ │ └── const.ts │ │ │ │ ├── README.md │ │ │ │ └── helpers │ │ │ │ │ └── interface.ts │ │ │ ├── index.ts │ │ │ ├── interface.ts │ │ │ └── engine.ts │ │ ├── method │ │ │ ├── README.md │ │ │ └── CHANGELOG.md │ │ ├── prop │ │ │ ├── README.md │ │ │ └── CHANGELOG.md │ │ ├── render │ │ │ ├── README.md │ │ │ └── CHANGELOG.md │ │ ├── render-function │ │ │ ├── README.md │ │ │ ├── const.ts │ │ │ └── index.ts │ │ ├── vnode │ │ │ └── README.md │ │ ├── field │ │ │ ├── README.md │ │ │ ├── const.ts │ │ │ └── CHANGELOG.md │ │ ├── meta │ │ │ └── README.md │ │ ├── traverse │ │ │ ├── README.md │ │ │ └── CHANGELOG.md │ │ ├── watch │ │ │ └── README.md │ │ ├── filters │ │ │ ├── README.md │ │ │ └── CHANGELOG.md │ │ ├── accessor │ │ │ └── README.md │ │ ├── construct │ │ │ ├── README.md │ │ │ └── interface.ts │ │ ├── state │ │ │ ├── README.md │ │ │ └── interface.ts │ │ ├── register │ │ │ ├── README.md │ │ │ └── index.ts │ │ ├── functional │ │ │ ├── README.md │ │ │ └── const.ts │ │ ├── event │ │ │ ├── providers │ │ │ │ └── index.ts │ │ │ ├── README.md │ │ │ ├── interface.ts │ │ │ └── CHANGELOG.md │ │ ├── const │ │ │ ├── validators.ts │ │ │ ├── symbols.ts │ │ │ ├── index.ts │ │ │ └── CHANGELOG.md │ │ ├── directives │ │ │ ├── in-view │ │ │ │ ├── adapter.ts │ │ │ │ ├── helpers.ts │ │ │ │ └── interface.ts │ │ │ ├── update-on │ │ │ │ └── const.ts │ │ │ ├── resize-observer │ │ │ │ ├── const.ts │ │ │ │ └── README.md │ │ │ ├── hook │ │ │ │ └── CHANGELOG.md │ │ │ ├── image │ │ │ │ ├── README.md │ │ │ │ └── interface.ts │ │ │ └── safe-html │ │ │ │ └── CHANGELOG.md │ │ ├── queue-emitter │ │ │ ├── interface.ts │ │ │ └── CHANGELOG.md │ │ ├── reflection │ │ │ ├── types.ts │ │ │ ├── const.ts │ │ │ └── README.md │ │ ├── decorators │ │ │ ├── README.md │ │ │ └── const.ts │ │ ├── flyweight │ │ │ └── README.md │ │ └── interface │ │ │ ├── link.ts │ │ │ └── mod.ts │ ├── worker │ │ ├── README.md │ │ └── CHANGELOG.md │ ├── prelude │ │ ├── test-env │ │ │ ├── README.md │ │ │ ├── mock │ │ │ │ └── README.md │ │ │ ├── import │ │ │ │ └── index.ts │ │ │ └── index.ts │ │ ├── dom │ │ │ ├── README.md │ │ │ ├── index.ts │ │ │ └── CHANGELOG.md │ │ ├── README.md │ │ ├── index.ts │ │ ├── webpack.ts │ │ └── i18n │ │ │ └── storage.ts │ ├── kv-storage │ │ └── index.ts │ ├── index.ts │ ├── block.ss │ ├── router │ │ ├── engines │ │ │ ├── index.ts │ │ │ └── browser.history.ts │ │ └── index.ts │ ├── dom │ │ ├── README.md │ │ ├── resize-observer │ │ │ └── const.ts │ │ ├── CHANGELOG.md │ │ └── in-view │ │ │ └── intersection │ │ │ └── helpers.ts │ ├── init │ │ ├── abt.ts │ │ ├── flags.ts │ │ ├── prefetch.ts │ │ └── CHANGELOG.md │ ├── browser │ │ └── interface.ts │ ├── html │ │ ├── CHANGELOG.md │ │ └── README.md │ ├── async │ │ ├── CHANGELOG.md │ │ └── README.md │ ├── cookies │ │ └── CHANGELOG.md │ ├── event │ │ ├── CHANGELOG.md │ │ └── README.md │ └── session │ │ ├── CHANGELOG.md │ │ └── const.ts ├── assets │ ├── logo.png │ ├── favicons │ │ ├── favicon.ico │ │ ├── favicon-16x16.png │ │ ├── favicon-32x32.png │ │ ├── favicon-48x48.png │ │ ├── mstile-70x70.png │ │ ├── mstile-144x144.png │ │ ├── mstile-150x150.png │ │ ├── mstile-310x150.png │ │ ├── mstile-310x310.png │ │ ├── apple-touch-icon.png │ │ ├── android-chrome-36x36.png │ │ ├── android-chrome-48x48.png │ │ ├── android-chrome-72x72.png │ │ ├── android-chrome-96x96.png │ │ ├── yandex-browser-50x50.png │ │ ├── android-chrome-144x144.png │ │ ├── android-chrome-192x192.png │ │ ├── android-chrome-256x256.png │ │ ├── android-chrome-384x384.png │ │ ├── android-chrome-512x512.png │ │ ├── apple-touch-icon-57x57.png │ │ ├── apple-touch-icon-60x60.png │ │ ├── apple-touch-icon-72x72.png │ │ ├── apple-touch-icon-76x76.png │ │ ├── apple-touch-icon-114x114.png │ │ ├── apple-touch-icon-120x120.png │ │ ├── apple-touch-icon-144x144.png │ │ ├── apple-touch-icon-152x152.png │ │ ├── apple-touch-icon-167x167.png │ │ ├── apple-touch-icon-180x180.png │ │ ├── apple-touch-icon-1024x1024.png │ │ ├── apple-touch-icon-precomposed.png │ │ ├── apple-touch-startup-image-1125x2436.png │ │ ├── apple-touch-startup-image-1136x640.png │ │ ├── apple-touch-startup-image-1170x2532.png │ │ ├── apple-touch-startup-image-1242x2208.png │ │ ├── apple-touch-startup-image-1242x2688.png │ │ ├── apple-touch-startup-image-1284x2778.png │ │ ├── apple-touch-startup-image-1334x750.png │ │ ├── apple-touch-startup-image-1536x2048.png │ │ ├── apple-touch-startup-image-1620x2160.png │ │ ├── apple-touch-startup-image-1668x2224.png │ │ ├── apple-touch-startup-image-1668x2388.png │ │ ├── apple-touch-startup-image-1792x828.png │ │ ├── apple-touch-startup-image-2048x1536.png │ │ ├── apple-touch-startup-image-2048x2732.png │ │ ├── apple-touch-startup-image-2160x1620.png │ │ ├── apple-touch-startup-image-2208x1242.png │ │ ├── apple-touch-startup-image-2224x1668.png │ │ ├── apple-touch-startup-image-2388x1668.png │ │ ├── apple-touch-startup-image-2436x1125.png │ │ ├── apple-touch-startup-image-2532x1170.png │ │ ├── apple-touch-startup-image-2688x1242.png │ │ ├── apple-touch-startup-image-2732x2048.png │ │ ├── apple-touch-startup-image-2778x1284.png │ │ ├── apple-touch-startup-image-640x1136.png │ │ ├── apple-touch-startup-image-750x1334.png │ │ ├── apple-touch-startup-image-828x1792.png │ │ ├── yandex-browser-manifest.json │ │ └── browserconfig.xml │ └── svg │ │ └── foo.svg ├── config │ ├── README.md │ └── CHANGELOG.md ├── lang │ └── engines │ │ ├── README.md │ │ ├── index.ts │ │ └── inline-html.ts ├── dummies │ ├── b-dummy-watch │ │ ├── README.md │ │ ├── index.js │ │ ├── b-dummy-watch.styl │ │ └── CHANGELOG.md │ ├── b-dummy │ │ ├── README.md │ │ ├── index.js │ │ ├── b-dummy.styl │ │ └── demo.js │ ├── b-dummy-lfc │ │ ├── README.md │ │ ├── index.js │ │ ├── b-dummy-lfc.styl │ │ └── CHANGELOG.md │ ├── b-dummy-decorators │ │ ├── README.md │ │ ├── index.js │ │ ├── b-dummy-decorators.styl │ │ ├── CHANGELOG.md │ │ └── b-dummy-decorators.ss │ ├── b-dummy-state │ │ ├── README.md │ │ ├── index.js │ │ ├── b-dummy-state.styl │ │ ├── b-dummy-state.ss │ │ └── CHANGELOG.md │ ├── b-dummy-sync │ │ ├── README.md │ │ ├── index.js │ │ ├── b-dummy-sync.styl │ │ ├── b-dummy-sync.ss │ │ └── CHANGELOG.md │ ├── b-dummy-text │ │ ├── README.md │ │ ├── index.js │ │ ├── demo.js │ │ ├── b-dummy-text.styl │ │ ├── CHANGELOG.md │ │ └── b-dummy-text.ss │ ├── b-dummy-control-list │ │ ├── README.md │ │ ├── index.js │ │ ├── b-dummy-control-list.styl │ │ └── CHANGELOG.md │ ├── b-dummy-async-render │ │ ├── README.md │ │ ├── index.js │ │ ├── b-dummy-async-render.styl │ │ └── CHANGELOG.md │ └── b-dummy-module-loader │ │ ├── README.md │ │ ├── b-dummy-module1 │ │ ├── README.md │ │ ├── index.js │ │ ├── b-dummy-module1.styl │ │ ├── CHANGELOG.md │ │ └── b-dummy-module1.ss │ │ ├── b-dummy-module2 │ │ ├── README.md │ │ ├── index.js │ │ ├── b-dummy-module2.styl │ │ ├── CHANGELOG.md │ │ └── b-dummy-module2.ss │ │ ├── index.js │ │ ├── b-dummy-module-loader.styl │ │ └── CHANGELOG.md ├── pages │ ├── p-v4-dynamic-page1 │ │ ├── README.md │ │ ├── index.js │ │ ├── p-v4-dynamic-page1.styl │ │ └── CHANGELOG.md │ ├── p-v4-dynamic-page2 │ │ ├── README.md │ │ ├── index.js │ │ ├── p-v4-dynamic-page2.styl │ │ ├── CHANGELOG.md │ │ └── p-v4-dynamic-page2.ss │ ├── p-v4-dynamic-page3 │ │ ├── README.md │ │ ├── index.js │ │ ├── p-v4-dynamic-page3.styl │ │ ├── CHANGELOG.md │ │ └── p-v4-dynamic-page3.ss │ └── p-v4-components-demo │ │ ├── README.md │ │ ├── b-v4-component-demo │ │ ├── README.md │ │ ├── index.js │ │ └── CHANGELOG.md │ │ ├── p-v4-components-demo.styl │ │ ├── CHANGELOG.md │ │ └── p-v4-components-demo.ess ├── super │ ├── i-block │ │ ├── modules │ │ │ ├── vdom │ │ │ │ ├── README.md │ │ │ │ ├── const.ts │ │ │ │ └── CHANGELOG.md │ │ │ ├── cache │ │ │ │ ├── README.md │ │ │ │ └── CHANGELOG.md │ │ │ ├── decorators │ │ │ │ ├── README.md │ │ │ │ ├── const.ts │ │ │ │ └── CHANGELOG.md │ │ │ ├── event-emitter │ │ │ │ ├── README.md │ │ │ │ ├── const.ts │ │ │ │ └── CHANGELOG.md │ │ │ ├── mods │ │ │ │ ├── README.md │ │ │ │ └── interface.ts │ │ │ ├── activation │ │ │ │ └── README.md │ │ │ ├── module-loader │ │ │ │ ├── README.md │ │ │ │ ├── const.ts │ │ │ │ └── interface.ts │ │ │ ├── listeners │ │ │ │ └── README.md │ │ │ ├── friend │ │ │ │ ├── README.md │ │ │ │ └── CHANGELOG.md │ │ │ ├── analytics │ │ │ │ ├── README.md │ │ │ │ └── CHANGELOG.md │ │ │ ├── sync │ │ │ │ └── README.md │ │ │ ├── daemons │ │ │ │ ├── README.md │ │ │ │ └── CHANGELOG.md │ │ │ ├── dom │ │ │ │ └── const.ts │ │ │ ├── state │ │ │ │ ├── interface.ts │ │ │ │ └── README.md │ │ │ ├── block │ │ │ │ ├── README.md │ │ │ │ └── const.ts │ │ │ ├── lfc │ │ │ │ ├── interface.ts │ │ │ │ └── CHANGELOG.md │ │ │ ├── opt │ │ │ │ ├── interface.ts │ │ │ │ ├── const.ts │ │ │ │ └── CHANGELOG.md │ │ │ ├── info-render │ │ │ │ └── CHANGELOG.md │ │ │ ├── storage │ │ │ │ └── CHANGELOG.md │ │ │ ├── field │ │ │ │ └── interface.ts │ │ │ └── provide │ │ │ │ └── CHANGELOG.md │ │ ├── index.js │ │ ├── directives │ │ │ ├── index.ts │ │ │ └── event │ │ │ │ ├── const.ts │ │ │ │ ├── CHANGELOG.md │ │ │ │ └── README.md │ │ ├── i-block-ds.styl │ │ ├── const.ts │ │ ├── README.md │ │ └── i-block.styl │ ├── i-static-page │ │ ├── modules │ │ │ ├── ss-helpers │ │ │ │ └── README.md │ │ │ ├── provider-data-store │ │ │ │ └── CHANGELOG.md │ │ │ ├── page-meta-data │ │ │ │ ├── interface.ts │ │ │ │ └── CHANGELOG.md │ │ │ └── theme │ │ │ │ ├── index.ts │ │ │ │ └── CHANGELOG.md │ │ ├── index.js │ │ └── i-static-page-ds.styl │ ├── i-data │ │ ├── index.js │ │ ├── const.ts │ │ ├── i-data.ss │ │ └── i-data.styl │ ├── i-input │ │ ├── index.js │ │ └── i18n │ │ │ ├── en.js │ │ │ └── ru.js │ ├── i-page │ │ ├── index.js │ │ ├── i-page.ss │ │ └── i-page.styl │ ├── i-input-text │ │ ├── index.js │ │ ├── const.ts │ │ ├── i-input-text.ss │ │ ├── modules │ │ │ └── mask │ │ │ │ ├── handlers │ │ │ │ └── index.ts │ │ │ │ └── index.ts │ │ └── i-input-text.styl │ └── i-dynamic-page │ │ ├── index.js │ │ ├── i-dynamic-page.styl │ │ └── i-dynamic-page.ss ├── global │ ├── g-debug │ │ ├── README.md │ │ ├── index.js │ │ └── g-debug.styl │ ├── g-def │ │ ├── index.js │ │ └── consts.styl │ ├── g-hint │ │ └── index.js │ └── g-icon │ │ ├── index.js │ │ ├── g-icon.styl │ │ └── CHANGELOG.md ├── entries │ ├── std.js │ └── p-v4-components-demo.js ├── traits │ ├── i-icon │ │ ├── index.js │ │ └── modules │ │ │ └── interface.ts │ ├── i-items │ │ ├── index.js │ │ └── CHANGELOG.md │ ├── i-open │ │ ├── index.js │ │ ├── interface.ts │ │ └── CHANGELOG.md │ ├── i-size │ │ ├── index.js │ │ ├── CHANGELOG.md │ │ ├── interface.ts │ │ └── README.md │ ├── i-width │ │ ├── index.js │ │ └── CHANGELOG.md │ ├── i-access │ │ ├── index.js │ │ └── i-access.styl │ ├── i-history │ │ ├── index.js │ │ ├── history │ │ │ └── const.ts │ │ ├── i-history.ss │ │ └── i-history.styl │ ├── i-visible │ │ ├── index.js │ │ └── i-visible.styl │ ├── i-progress │ │ ├── index.js │ │ └── i-progress.styl │ ├── i-active-items │ │ └── index.js │ ├── i-observe-dom │ │ └── index.js │ ├── i-lock-page-scroll │ │ └── index.js │ └── i-open-toggle │ │ ├── index.js │ │ └── CHANGELOG.md ├── presets │ └── index.ts ├── routes │ └── index.ts ├── form │ ├── b-form │ │ ├── index.js │ │ └── b-form.styl │ ├── b-checkbox │ │ ├── index.js │ │ ├── i18n │ │ │ ├── en.js │ │ │ └── ru.js │ │ └── interface.ts │ ├── b-textarea │ │ ├── index.js │ │ ├── interface.ts │ │ ├── i18n │ │ │ ├── en.js │ │ │ └── ru.js │ │ └── b-textarea-ds.styl │ ├── b-icon-button │ │ ├── index.js │ │ ├── b-icon-button.styl │ │ └── CHANGELOG.md │ ├── b-input-hidden │ │ ├── index.js │ │ ├── b-input-hidden.styl │ │ ├── b-input-hidden.ss │ │ └── CHANGELOG.md │ ├── b-radio-button │ │ ├── index.js │ │ ├── b-radio-button.styl │ │ ├── b-radio-button.ss │ │ └── CHANGELOG.md │ ├── b-select-date │ │ ├── interface.ts │ │ ├── index.js │ │ └── CHANGELOG.md │ ├── b-input │ │ ├── interface.ts │ │ └── index.js │ ├── b-button │ │ ├── b-button_theme_demo.styl │ │ ├── index.js │ │ ├── interface.ts │ │ └── demo.js │ └── b-select │ │ ├── i18n │ │ ├── en.js │ │ └── ru.js │ │ ├── index.js │ │ └── const.ts ├── icons │ ├── b-icon │ │ └── index.js │ └── b-progress-icon │ │ ├── index.js │ │ ├── README.md │ │ ├── b-progress-icon.ss │ │ ├── b-progress-icon-ds.styl │ │ └── CHANGELOG.md └── models │ └── demo │ ├── checkbox │ ├── mocks.ts │ └── index.ts │ ├── list │ ├── mocks.ts │ └── index.ts │ ├── form │ └── index.ts │ ├── nested-list │ └── index.ts │ ├── pagination │ └── index.ts │ ├── index.ts │ ├── session │ └── index.ts │ └── input │ └── mocks.ts ├── tests ├── README.md ├── helpers │ ├── utils │ │ ├── README.md │ │ └── CHANGELOG.md │ ├── component │ │ ├── README.md │ │ └── CHANGELOG.md │ ├── gestures │ │ ├── README.md │ │ └── CHANGELOG.md │ ├── scroll │ │ ├── README.md │ │ └── CHANGELOG.md │ ├── bom │ │ ├── README.md │ │ └── CHANGELOG.md │ ├── dom │ │ ├── README.md │ │ └── CHANGELOG.md │ ├── request │ │ ├── README.md │ │ └── CHANGELOG.md │ └── router │ │ ├── README.md │ │ └── CHANGELOG.md ├── config │ ├── unit │ │ └── setup.ts │ └── project │ │ └── setup.ts ├── network-interceptors │ └── pagination │ │ └── README.md └── utils │ └── interface.ts ├── client.tsconfig ├── .yarnrc.yml ├── disclaimer.txt ├── .eslintignore ├── .pzlrrc ├── spec └── support │ └── jasmine.json ├── .editorconfig ├── README.md ├── .tsconfig └── config └── production.js /.browserslistrc: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.husky/.gitignore: -------------------------------------------------------------------------------- 1 | _ 2 | -------------------------------------------------------------------------------- /.stlintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@v4fire/linters"] 3 | } 4 | -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- 1 | APP_NAME=MyAwesomeProject 2 | NODE_ENV=production 3 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | # Perform LF normalization 2 | * text=auto eol=lf 3 | -------------------------------------------------------------------------------- /src/base/b-tree/index.js: -------------------------------------------------------------------------------- 1 | package('b-tree') 2 | .extends('i-data'); 3 | -------------------------------------------------------------------------------- /src/core/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@v4fire/core/tslint.json" 3 | } 4 | -------------------------------------------------------------------------------- /src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/logo.png -------------------------------------------------------------------------------- /src/base/b-skeleton/index.js: -------------------------------------------------------------------------------- 1 | package('b-skeleton') 2 | .extends('i-block'); 3 | 4 | -------------------------------------------------------------------------------- /.husky/pre-push: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . "$(dirname "$0")/_/husky.sh" 3 | 4 | yarn test:linters 5 | -------------------------------------------------------------------------------- /tests/README.md: -------------------------------------------------------------------------------- 1 | # tests 2 | 3 | This module provides a bunch of helpers for project tests. 4 | -------------------------------------------------------------------------------- /src/config/README.md: -------------------------------------------------------------------------------- 1 | # config 2 | 3 | This module provides options to configure the application. 4 | -------------------------------------------------------------------------------- /src/core/abt/README.md: -------------------------------------------------------------------------------- 1 | # core/abt 2 | 3 | This module provides API to work with ABT experiments. 4 | -------------------------------------------------------------------------------- /src/core/helpers/README.md: -------------------------------------------------------------------------------- 1 | # core/helpers 2 | 3 | This module provides a bunch of helper functions. 4 | -------------------------------------------------------------------------------- /src/core/render/README.md: -------------------------------------------------------------------------------- 1 | # core/render 2 | 3 | This module provides API to render async components. 4 | -------------------------------------------------------------------------------- /tests/helpers/utils/README.md: -------------------------------------------------------------------------------- 1 | # tests/helpers/utils 2 | 3 | This module provides some test utilities. 4 | -------------------------------------------------------------------------------- /src/assets/favicons/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/favicon.ico -------------------------------------------------------------------------------- /src/lang/engines/README.md: -------------------------------------------------------------------------------- 1 | # lang/engines 2 | 3 | This module provides engines for loading language packs. 4 | -------------------------------------------------------------------------------- /src/core/component/ref/README.md: -------------------------------------------------------------------------------- 1 | # core/component/ref 2 | 3 | This module provides API to resolve component refs. 4 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-watch/README.md: -------------------------------------------------------------------------------- 1 | # dummies/b-dummy-watch 2 | 3 | Dummy component to test component watch API. 4 | -------------------------------------------------------------------------------- /src/dummies/b-dummy/README.md: -------------------------------------------------------------------------------- 1 | # dummies/b-dummy 2 | 3 | Dummy component to test the core API of superclasses. 4 | -------------------------------------------------------------------------------- /src/assets/favicons/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/favicon-16x16.png -------------------------------------------------------------------------------- /src/assets/favicons/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/favicon-32x32.png -------------------------------------------------------------------------------- /src/assets/favicons/favicon-48x48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/favicon-48x48.png -------------------------------------------------------------------------------- /src/assets/favicons/mstile-70x70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/mstile-70x70.png -------------------------------------------------------------------------------- /src/core/component/hook/README.md: -------------------------------------------------------------------------------- 1 | # core/component/hooks 2 | 3 | This module provides API to manage component hooks. 4 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-lfc/README.md: -------------------------------------------------------------------------------- 1 | # dummies/b-dummy-lfc 2 | 3 | Dummy component to test `super/i-block/modules/lfc`. 4 | -------------------------------------------------------------------------------- /tests/helpers/component/README.md: -------------------------------------------------------------------------------- 1 | # tests/helpers/component 2 | 3 | This module provides API to work with components. 4 | -------------------------------------------------------------------------------- /tests/helpers/gestures/README.md: -------------------------------------------------------------------------------- 1 | # tests/helpers/dom 2 | 3 | This module provides API to work with touch gestures. 4 | -------------------------------------------------------------------------------- /tests/helpers/scroll/README.md: -------------------------------------------------------------------------------- 1 | # tests/helpers/scroll 2 | 3 | This module provides API to work with scroll on a page. 4 | -------------------------------------------------------------------------------- /src/assets/favicons/mstile-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/mstile-144x144.png -------------------------------------------------------------------------------- /src/assets/favicons/mstile-150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/mstile-150x150.png -------------------------------------------------------------------------------- /src/assets/favicons/mstile-310x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/mstile-310x150.png -------------------------------------------------------------------------------- /src/assets/favicons/mstile-310x310.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/mstile-310x310.png -------------------------------------------------------------------------------- /src/core/component/engines/vue/README.md: -------------------------------------------------------------------------------- 1 | # core/component/engines/vue 2 | 3 | This module provides an adaptor for Vue.js. 4 | -------------------------------------------------------------------------------- /src/core/component/method/README.md: -------------------------------------------------------------------------------- 1 | # core/component/method 2 | 3 | This module provides API to manage component methods. 4 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-decorators/README.md: -------------------------------------------------------------------------------- 1 | # dummies/b-dummy-decorators 2 | 3 | Dummy component to test component decorators. 4 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-state/README.md: -------------------------------------------------------------------------------- 1 | # dummies/b-dummy-state 2 | 3 | Dummy component to test `super/i-block/modules/state`. 4 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-sync/README.md: -------------------------------------------------------------------------------- 1 | # dummies/b-dummy-sync 2 | 3 | Dummy component to test `super/i-block/modules/sync`. 4 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-text/README.md: -------------------------------------------------------------------------------- 1 | # dummies/b-dummy-text 2 | 3 | Dummy component to test the [[iInputText]] component. 4 | -------------------------------------------------------------------------------- /tests/helpers/bom/README.md: -------------------------------------------------------------------------------- 1 | # tests/helpers/bom 2 | 3 | This module provides API to work with the browser object model. 4 | -------------------------------------------------------------------------------- /tests/helpers/dom/README.md: -------------------------------------------------------------------------------- 1 | # tests/helpers/dom 2 | 3 | This module provides API to work with the document object model. 4 | -------------------------------------------------------------------------------- /tests/helpers/request/README.md: -------------------------------------------------------------------------------- 1 | # tests/helpers/request 2 | 3 | This module provides API to work with requests on a page. 4 | -------------------------------------------------------------------------------- /tests/helpers/router/README.md: -------------------------------------------------------------------------------- 1 | # tests/helpers/router 2 | 3 | This module provides API to work with an application router. 4 | -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon.png -------------------------------------------------------------------------------- /src/core/component/prop/README.md: -------------------------------------------------------------------------------- 1 | # core/component/prop 2 | 3 | This module provides API to manage component input properties. 4 | -------------------------------------------------------------------------------- /src/core/component/render/README.md: -------------------------------------------------------------------------------- 1 | # core/component/render 2 | 3 | This module provides a bunch of functions to render vnode-s. 4 | -------------------------------------------------------------------------------- /src/core/worker/README.md: -------------------------------------------------------------------------------- 1 | # core/worker 2 | 3 | This module provides a bunch of helper functions to work with browser workers. 4 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page1/README.md: -------------------------------------------------------------------------------- 1 | # pages/p-v4-dynamic-page1 2 | 3 | This module provides a simple dynamic page for tests. 4 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page2/README.md: -------------------------------------------------------------------------------- 1 | # pages/p-v4-dynamic-page2 2 | 3 | This module provides a simple dynamic page for tests. 4 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page3/README.md: -------------------------------------------------------------------------------- 1 | # pages/p-v4-dynamic-page3 2 | 3 | This module provides a simple dynamic page for tests. 4 | -------------------------------------------------------------------------------- /src/assets/favicons/android-chrome-36x36.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/android-chrome-36x36.png -------------------------------------------------------------------------------- /src/assets/favicons/android-chrome-48x48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/android-chrome-48x48.png -------------------------------------------------------------------------------- /src/assets/favicons/android-chrome-72x72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/android-chrome-72x72.png -------------------------------------------------------------------------------- /src/assets/favicons/android-chrome-96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/android-chrome-96x96.png -------------------------------------------------------------------------------- /src/assets/favicons/yandex-browser-50x50.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/yandex-browser-50x50.png -------------------------------------------------------------------------------- /src/dummies/b-dummy-control-list/README.md: -------------------------------------------------------------------------------- 1 | # dummies/b-dummy-control-list 2 | 3 | Dummy component to test `traits/i-control-list`. 4 | -------------------------------------------------------------------------------- /src/super/i-block/modules/vdom/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/vdom 2 | 3 | This module provides a class to work with a VDOM tree. 4 | -------------------------------------------------------------------------------- /src/assets/favicons/android-chrome-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/android-chrome-144x144.png -------------------------------------------------------------------------------- /src/assets/favicons/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/android-chrome-192x192.png -------------------------------------------------------------------------------- /src/assets/favicons/android-chrome-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/android-chrome-256x256.png -------------------------------------------------------------------------------- /src/assets/favicons/android-chrome-384x384.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/android-chrome-384x384.png -------------------------------------------------------------------------------- /src/assets/favicons/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/android-chrome-512x512.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon-57x57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon-57x57.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon-60x60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon-60x60.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon-72x72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon-72x72.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon-76x76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon-76x76.png -------------------------------------------------------------------------------- /src/core/component/render-function/README.md: -------------------------------------------------------------------------------- 1 | # core/component/render-function 2 | 3 | This module provides API to wrap render functions. 4 | -------------------------------------------------------------------------------- /src/core/component/vnode/README.md: -------------------------------------------------------------------------------- 1 | # core/component/vnode 2 | 3 | This module provides a bunch of functions to work with a VNode object. 4 | -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon-114x114.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon-114x114.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon-120x120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon-120x120.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon-144x144.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon-152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon-152x152.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon-167x167.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon-167x167.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon-180x180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon-180x180.png -------------------------------------------------------------------------------- /src/core/component/engines/README.md: -------------------------------------------------------------------------------- 1 | # core/component/engines 2 | 3 | This module provides a bunch of adaptors for different MVVM libraries. 4 | -------------------------------------------------------------------------------- /src/core/component/field/README.md: -------------------------------------------------------------------------------- 1 | # core/component/field 2 | 3 | This module provides API to initialize component fields and system fields. 4 | -------------------------------------------------------------------------------- /src/core/component/meta/README.md: -------------------------------------------------------------------------------- 1 | # core/component/meta 2 | 3 | This module provides API to create an abstract representation of a component. 4 | -------------------------------------------------------------------------------- /src/core/component/traverse/README.md: -------------------------------------------------------------------------------- 1 | # core/component/traverse 2 | 3 | This module provides a bunch of functions to iterate over a vnode tree. 4 | -------------------------------------------------------------------------------- /src/core/component/watch/README.md: -------------------------------------------------------------------------------- 1 | # core/component/watch 2 | 3 | This module provides API to add the feature of object watching to components. 4 | -------------------------------------------------------------------------------- /src/core/prelude/test-env/README.md: -------------------------------------------------------------------------------- 1 | # core/prelude/test-env 2 | 3 | This module provides extensions of the global namespace to test components. 4 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-async-render/README.md: -------------------------------------------------------------------------------- 1 | # dummies/b-dummy-async-render 2 | 3 | Dummy component to test `super/i-block/modules/async-render`. 4 | -------------------------------------------------------------------------------- /client.tsconfig: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@v4fire/client/.tsconfig", 3 | 4 | "compilerOptions": { 5 | "importsNotUsedAsValues": null 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon-1024x1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon-1024x1024.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-icon-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-icon-precomposed.png -------------------------------------------------------------------------------- /src/core/component/filters/README.md: -------------------------------------------------------------------------------- 1 | # core/component/filters 2 | 3 | This module registers a bunch of functions as filters to a component library. 4 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/README.md: -------------------------------------------------------------------------------- 1 | # dummies/b-dummy-module-loader 2 | 3 | Dummy component to test `super/i-block/modules/module-loader`. 4 | -------------------------------------------------------------------------------- /src/super/i-block/modules/cache/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/cache 2 | 3 | This module provides a helper class to cache some component values. 4 | -------------------------------------------------------------------------------- /src/super/i-block/modules/decorators/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/decorators 2 | 3 | This module provides a bunch of decorators to components. 4 | -------------------------------------------------------------------------------- /src/super/i-block/modules/event-emitter/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/event-emitter 2 | 3 | This module provides API to wrap event emitters. 4 | -------------------------------------------------------------------------------- /src/super/i-block/modules/mods/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/mods 2 | 3 | This module provides additional API to work with component modifiers. 4 | -------------------------------------------------------------------------------- /.yarnrc.yml: -------------------------------------------------------------------------------- 1 | compressionLevel: mixed 2 | 3 | enableGlobalCache: false 4 | 5 | nodeLinker: node-modules 6 | 7 | yarnPath: .yarn/releases/yarn-4.0.2.cjs 8 | -------------------------------------------------------------------------------- /src/core/component/accessor/README.md: -------------------------------------------------------------------------------- 1 | # core/component/accessor 2 | 3 | This module provides API to initialize component accessors and computed fields. 4 | -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-1125x2436.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-1125x2436.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-1136x640.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-1136x640.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-1170x2532.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-1170x2532.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-1242x2208.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-1242x2208.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-1242x2688.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-1242x2688.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-1284x2778.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-1284x2778.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-1334x750.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-1334x750.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-1536x2048.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-1536x2048.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-1620x2160.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-1620x2160.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-1668x2224.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-1668x2224.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-1668x2388.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-1668x2388.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-1792x828.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-1792x828.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-2048x1536.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-2048x1536.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-2048x2732.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-2048x2732.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-2160x1620.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-2160x1620.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-2208x1242.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-2208x1242.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-2224x1668.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-2224x1668.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-2388x1668.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-2388x1668.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-2436x1125.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-2436x1125.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-2532x1170.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-2532x1170.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-2688x1242.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-2688x1242.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-2732x2048.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-2732x2048.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-2778x1284.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-2778x1284.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-640x1136.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-640x1136.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-750x1334.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-750x1334.png -------------------------------------------------------------------------------- /src/assets/favicons/apple-touch-startup-image-828x1792.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/V4Fire/Client/HEAD/src/assets/favicons/apple-touch-startup-image-828x1792.png -------------------------------------------------------------------------------- /src/super/i-block/modules/activation/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/activation 2 | 3 | This module provides helper functions to activate/deactivate a component. 4 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/b-dummy-module1/README.md: -------------------------------------------------------------------------------- 1 | # dummies/b-dummy-module-loader/b-dummy-module1 2 | 3 | Dummy component to test dynamic loading of modules. 4 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/b-dummy-module2/README.md: -------------------------------------------------------------------------------- 1 | # dummies/b-dummy-module-loader/b-dummy-module2 2 | 3 | Dummy component to test dynamic loading of modules. 4 | -------------------------------------------------------------------------------- /src/pages/p-v4-components-demo/README.md: -------------------------------------------------------------------------------- 1 | # pages/p-v4-components-demo 2 | 3 | This module provides a page with component demo-s. Basically it uses with component tests. 4 | -------------------------------------------------------------------------------- /src/base/b-skeleton/README.md: -------------------------------------------------------------------------------- 1 | # base/b-skeleton 2 | 3 | This module provides a bunch of template functions to generate 4 | animated stubs (skeletons) while pending data. 5 | -------------------------------------------------------------------------------- /src/core/component/construct/README.md: -------------------------------------------------------------------------------- 1 | # core/component/construct 2 | 3 | This module provides a bunch of functions to construct or initialize common component handlers. 4 | -------------------------------------------------------------------------------- /src/core/component/state/README.md: -------------------------------------------------------------------------------- 1 | # core/component/state 2 | 3 | This module provides an object to declare external state values to components, such as an online status. 4 | -------------------------------------------------------------------------------- /src/super/i-block/modules/module-loader/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/module-loader 2 | 3 | This module provides a class to load the dynamic dependencies of components. 4 | -------------------------------------------------------------------------------- /src/core/prelude/dom/README.md: -------------------------------------------------------------------------------- 1 | # core/prelude/dom 2 | 3 | This module extends constructors and prototypes of DOM objects with extra methods, like `Element.prototype.getIndex`, etc. 4 | -------------------------------------------------------------------------------- /src/pages/p-v4-components-demo/b-v4-component-demo/README.md: -------------------------------------------------------------------------------- 1 | # pages/p-v4-components-demo/b-v4-component-demo 2 | 3 | This module provides a component to inspect another components. 4 | -------------------------------------------------------------------------------- /src/super/i-static-page/modules/ss-helpers/README.md: -------------------------------------------------------------------------------- 1 | # super/i-static-page/modules/ss-helpers 2 | 3 | This module provides a bunch of helper functions to work within Snakeskin templates. 4 | -------------------------------------------------------------------------------- /src/global/g-debug/README.md: -------------------------------------------------------------------------------- 1 | # global/g-debug 2 | 3 | This module provides styles to debug the application. 4 | 5 | ## Synopsis 6 | 7 | * This module provides global styles, not a component. 8 | -------------------------------------------------------------------------------- /src/super/i-block/modules/listeners/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/listeners 2 | 3 | This module provides a bunch of helper functions to initialize the default component event listeners. 4 | -------------------------------------------------------------------------------- /disclaimer.txt: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | -------------------------------------------------------------------------------- /src/core/component/register/README.md: -------------------------------------------------------------------------------- 1 | # core/component/register 2 | 3 | This module provides API to register components. 4 | 5 | ```js 6 | @component() 7 | class bFoo { 8 | 9 | } 10 | ``` 11 | -------------------------------------------------------------------------------- /src/super/i-block/modules/friend/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/friend 2 | 3 | This module provides a class that is friendly to [[iBlock]], i.e. it can use private and protected methods and properties. 4 | -------------------------------------------------------------------------------- /src/core/component/functional/README.md: -------------------------------------------------------------------------------- 1 | # core/component/functional 2 | 3 | This module provides API to create a functional component. 4 | Mind that V4Fire has own cross-platform implementation of functional components. 5 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | src/*/**/index.js 2 | src/*/**/*.index.js 3 | 4 | assets/** 5 | src/assets/** 6 | 7 | tmp/** 8 | src/entries/tmp/** 9 | 10 | !src/**/test/*.js 11 | 12 | docs/** 13 | dist/** 14 | node_modules/** 15 | 16 | -------------------------------------------------------------------------------- /src/core/component/event/providers/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | -------------------------------------------------------------------------------- /src/super/i-block/modules/analytics/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/analytics 2 | 3 | This module provides a class to work with analytic engines. 4 | 5 | ```js 6 | this.analytics.sendEvent('clicked', {user: '1'}); 7 | ``` 8 | -------------------------------------------------------------------------------- /src/core/prelude/README.md: -------------------------------------------------------------------------------- 1 | # core/prelude 2 | 3 | This module provides extensions for a bunch of builtin objects, such as String, Number, etc. 4 | The module is uploaded to the runtime automatically, you don't need to require it. 5 | -------------------------------------------------------------------------------- /src/assets/favicons/yandex-browser-manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": 1, 3 | "api_version": 1, 4 | "layout": { 5 | "logo": "/$faviconPublicPath/yandex-browser-50x50.png", 6 | "color": "#2E2929", 7 | "show_title": true 8 | } 9 | } -------------------------------------------------------------------------------- /src/assets/svg/foo.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/entries/std.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import '../core/std'; 10 | -------------------------------------------------------------------------------- /src/global/g-debug/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('g-debug'); 10 | -------------------------------------------------------------------------------- /src/global/g-def/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('g-def'); 10 | -------------------------------------------------------------------------------- /src/global/g-hint/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('g-hint'); 10 | -------------------------------------------------------------------------------- /src/global/g-icon/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('g-icon'); 10 | -------------------------------------------------------------------------------- /src/super/i-block/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-block'); 10 | -------------------------------------------------------------------------------- /src/traits/i-icon/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-icon'); 10 | -------------------------------------------------------------------------------- /src/traits/i-items/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-items'); 10 | -------------------------------------------------------------------------------- /src/traits/i-open/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-open'); 10 | -------------------------------------------------------------------------------- /src/traits/i-size/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-size'); 10 | -------------------------------------------------------------------------------- /src/traits/i-width/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-width'); 10 | -------------------------------------------------------------------------------- /src/presets/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const loopback = {}; 10 | -------------------------------------------------------------------------------- /src/routes/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export default { 10 | 11 | }; 12 | -------------------------------------------------------------------------------- /src/traits/i-access/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-access'); 10 | -------------------------------------------------------------------------------- /src/traits/i-history/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-history'); 10 | -------------------------------------------------------------------------------- /src/traits/i-visible/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-visible'); 10 | -------------------------------------------------------------------------------- /.pzlrrc: -------------------------------------------------------------------------------- 1 | { 2 | "projectType": "ts", 3 | "blockDir": "", 4 | "sourceDir": "src", 5 | "disclaimer": "disclaimer.txt", 6 | "dependencies": ["@v4fire/core"], 7 | "designSystem": "@v4fire/design-system", 8 | "assets": {"sprite": "svg"} 9 | } 10 | -------------------------------------------------------------------------------- /spec/support/jasmine.json: -------------------------------------------------------------------------------- 1 | { 2 | "spec_dir": "", 3 | "spec_files": [ 4 | "src/**/*[sS]pec.js", 5 | "build/**/*[sS]pec.js" 6 | ], 7 | "stopSpecOnExpectationFailure": false, 8 | "random": true, 9 | "timeoutInterval": 10000 10 | } 11 | -------------------------------------------------------------------------------- /src/core/component/event/README.md: -------------------------------------------------------------------------------- 1 | # core/component/event 2 | 3 | This module provides an event bridge between components and other part of an application. 4 | Also, this module provides a bunch of functions to add base event API to a component instance. 5 | -------------------------------------------------------------------------------- /src/traits/i-progress/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-progress'); 10 | -------------------------------------------------------------------------------- /src/core/prelude/test-env/mock/README.md: -------------------------------------------------------------------------------- 1 | # core/prelude/test-env/mock 2 | 3 | This module provides an API for accessing `jest-mock`, in fact it is just a proxy between the client and the `jest-mock` API which allows accessing `jest-mock` through the global scope. 4 | -------------------------------------------------------------------------------- /src/traits/i-active-items/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-active-items'); 10 | -------------------------------------------------------------------------------- /src/traits/i-observe-dom/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-observe-dom'); 10 | -------------------------------------------------------------------------------- /src/core/kv-storage/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Core 3 | * https://github.com/V4Fire/Core 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Core/blob/master/LICENSE 7 | */ 8 | 9 | export * from '@v4fire/core/core/kv-storage'; 10 | -------------------------------------------------------------------------------- /src/base/b-image/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-image') 10 | .extends('i-block'); 11 | -------------------------------------------------------------------------------- /src/base/b-router/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-router') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/core/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import '@v4fire/core/core'; 10 | import 'core/init'; 11 | -------------------------------------------------------------------------------- /src/form/b-form/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-form') 10 | .extends('i-block'); 11 | -------------------------------------------------------------------------------- /src/icons/b-icon/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-icon') 10 | .extends('i-block'); 11 | -------------------------------------------------------------------------------- /src/super/i-data/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-data') 10 | .extends('i-block'); 11 | -------------------------------------------------------------------------------- /src/super/i-input/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-input') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/super/i-page/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-page') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/traits/i-lock-page-scroll/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-lock-page-scroll'); 10 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | end_of_line = lf 6 | indent_style = space 7 | indent_size = 2 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | 11 | [*.{js,jsx,ts,tsx,html,css,styl,ss,ess}] 12 | indent_style = tab 13 | -------------------------------------------------------------------------------- /src/base/b-sidebar/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-sidebar') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/core/component/field/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | fieldQueue = new Set(); 11 | -------------------------------------------------------------------------------- /src/dummies/b-dummy/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dummy') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/form/b-checkbox/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-checkbox') 10 | .extends('i-input'); 11 | -------------------------------------------------------------------------------- /src/lang/engines/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export { default } from 'lang/engines/inline-html'; 10 | -------------------------------------------------------------------------------- /tests/config/unit/setup.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export default (): void => { 10 | // ... 11 | }; 12 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-lfc/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dummy-lfc') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/form/b-textarea/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-textarea') 10 | .extends('i-input-text'); 11 | -------------------------------------------------------------------------------- /src/super/i-input-text/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-input-text') 10 | .extends('i-input'); 11 | -------------------------------------------------------------------------------- /src/traits/i-history/history/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | INITIAL_STAGE = 'index'; 11 | -------------------------------------------------------------------------------- /tests/config/project/setup.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export default (): void => { 10 | // ... 11 | }; 12 | -------------------------------------------------------------------------------- /src/base/b-image/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type SizeType = 10 | 'cover' | 11 | 'contain'; 12 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-state/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dummy-state') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-sync/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dummy-sync') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/form/b-icon-button/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-icon-button') 10 | .extends('b-button'); 11 | -------------------------------------------------------------------------------- /src/form/b-input-hidden/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-input-hidden') 10 | .extends('i-input'); 11 | -------------------------------------------------------------------------------- /src/super/i-dynamic-page/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-dynamic-page') 10 | .extends('i-page'); 11 | -------------------------------------------------------------------------------- /src/super/i-static-page/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-static-page') 10 | .extends('i-page'); 11 | -------------------------------------------------------------------------------- /src/traits/i-open-toggle/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('i-open-toggle') 10 | .extends('i-open'); 11 | -------------------------------------------------------------------------------- /src/base/b-dynamic-page/helpers/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export * from 'base/b-dynamic-page/helpers/scroll'; 10 | -------------------------------------------------------------------------------- /src/base/b-dynamic-page/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dynamic-page') 10 | .extends('i-dynamic-page'); 11 | -------------------------------------------------------------------------------- /src/base/b-remote-provider/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-remote-provider') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/base/b-virtual-scroll/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-virtual-scroll') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/core/component/const/validators.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | isComponent = /^([bpg]-[^_ ]+)$/; 11 | -------------------------------------------------------------------------------- /src/core/component/directives/in-view/adapter.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export * from 'core/dom/in-view/adapter'; 10 | -------------------------------------------------------------------------------- /src/core/component/directives/in-view/helpers.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export * from 'core/dom/in-view/helpers'; 10 | -------------------------------------------------------------------------------- /src/core/component/engines/zero/context/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type KeyCode = string | number; 10 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-text/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dummy-text') 10 | .extends('i-input-text'); 11 | -------------------------------------------------------------------------------- /src/form/b-radio-button/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-radio-button') 10 | .extends('b-checkbox'); 11 | -------------------------------------------------------------------------------- /src/global/g-icon/g-icon.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | $p = { 10 | 11 | } 12 | 13 | g-icon 14 | fill currentColor 15 | -------------------------------------------------------------------------------- /src/icons/b-progress-icon/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-progress-icon') 10 | .extends('i-block'); 11 | -------------------------------------------------------------------------------- /src/base/b-virtual-scroll-new/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-virtual-scroll-new') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/core/block.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - template index() 12 | < . 13 | < slot 14 | -------------------------------------------------------------------------------- /src/core/component/directives/in-view/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export * from 'core/dom/in-view/interface'; 10 | -------------------------------------------------------------------------------- /src/core/component/directives/update-on/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const ID_ATTRIBUTE = 'data-update-on-id'; 10 | -------------------------------------------------------------------------------- /src/core/router/engines/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export { default } from 'core/router/engines/browser-history'; 10 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-decorators/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dummy-decorators') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/form/b-select-date/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type Value = Date; 10 | export type FormValue = Value; 11 | -------------------------------------------------------------------------------- /src/super/i-block/modules/decorators/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | waitCtxRgxp = /([^:]+):(\w+)/; 11 | -------------------------------------------------------------------------------- /src/super/i-block/modules/sync/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/sync 2 | 3 | This module provides a class with some helper methods to organize a "link" from one component property to another. 4 | 5 | ```js 6 | this.foo = 1; 7 | this.bla = this.sync.link(['bla', 'foo'], (v) => v * 2); 8 | ``` 9 | -------------------------------------------------------------------------------- /src/core/render/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export interface Task { 10 | fn: Function; 11 | weight?: number; 12 | } 13 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-async-render/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dummy-async-render') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-control-list/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dummy-control-list') 10 | .extends('i-block'); 11 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dummy-module-loader') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/super/i-block/modules/daemons/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/daemons 2 | 3 | This module provides API to work with daemons. 4 | Daemon is a special object that can watch component properties, listen component events/hooks and do some useful payload, like sending analytics or performance events. 5 | -------------------------------------------------------------------------------- /src/base/b-window/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-window') 10 | .extends('i-data') 11 | .dependencies('b-button'); 12 | -------------------------------------------------------------------------------- /src/core/component/render-function/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | vAttrsRgxp = /(v-(.*?))(?::(.*?))?(\..*)?$/; 11 | -------------------------------------------------------------------------------- /src/form/b-input/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type Value = string; 10 | export type FormValue = CanUndef; 11 | -------------------------------------------------------------------------------- /src/form/b-textarea/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type Value = string; 10 | export type FormValue = CanUndef; 11 | -------------------------------------------------------------------------------- /src/super/i-block/modules/dom/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | componentRgxp = /(?:^| )([bpg]-[^_ ]+)(?: |$)/; 11 | -------------------------------------------------------------------------------- /tests/network-interceptors/pagination/README.md: -------------------------------------------------------------------------------- 1 | # tests/helpers/network-interceptors/pagination 2 | 3 | This module provides API for working with request mocking. 4 | 5 | ## API 6 | 7 | ### interceptPaginationRequest 8 | 9 | ```typescript 10 | await interceptPaginationRequest(page); 11 | ``` 12 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/b-dummy-module1/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dummy-module1') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/b-dummy-module2/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dummy-module2') 10 | .extends('i-data'); 11 | -------------------------------------------------------------------------------- /src/super/i-block/modules/state/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type ConverterCallType = 10 | 'component' | 11 | 'remote'; 12 | -------------------------------------------------------------------------------- /src/base/b-list/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-list') 10 | .extends('i-data') 11 | .dependencies('b-icon', 'b-progress-icon'); 12 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-watch/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-dummy-watch') 10 | .extends('i-data') 11 | .dependencies('b-button'); 12 | -------------------------------------------------------------------------------- /src/form/b-button/b-button_theme_demo.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | b-button_theme_demo extends b-button 10 | /theme 11 | background #CCC 12 | -------------------------------------------------------------------------------- /src/form/b-select-date/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-select-date') 10 | .extends('i-input') 11 | .dependencies('b-select'); 12 | -------------------------------------------------------------------------------- /src/pages/p-v4-components-demo/b-v4-component-demo/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-v4-component-demo') 10 | .extends('i-block'); 11 | -------------------------------------------------------------------------------- /src/super/i-block/modules/block/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/block 2 | 3 | This module provides a class with some helper methods to work with a component DOM element by using BEM pattern. 4 | 5 | ```js 6 | this.block.setMod('focused', true); 7 | this.block.setElMod(node, 'my-element', 'focused', true); 8 | ``` 9 | -------------------------------------------------------------------------------- /src/traits/i-open/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export interface CloseHelperEvents { 10 | key?: string; 11 | touch?: string; 12 | } 13 | -------------------------------------------------------------------------------- /src/base/b-bottom-slide/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type HeightMode = 'content' | 'full'; 10 | export type Direction = -1 | 0 | 1; 11 | -------------------------------------------------------------------------------- /src/base/b-dynamic-page/test/b-scroll-element-dummy/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-scroll-element-dummy') 10 | .extends('b-dummy'); 11 | -------------------------------------------------------------------------------- /src/core/dom/README.md: -------------------------------------------------------------------------------- 1 | # core/dom 2 | 3 | This module provides a bunch of helper functions to work with DOM objects. 4 | 5 | ```js 6 | import { wrapAsDelegateHandler } from 'core/dom'; 7 | 8 | document.addEventListener('click', wrapAsDelegateHandler('.bla', (e) => { 9 | console.log(e); 10 | })); 11 | ``` 12 | -------------------------------------------------------------------------------- /src/form/b-button/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-button') 10 | .extends('i-data') 11 | .dependencies('b-icon', 'b-progress-icon'); 12 | -------------------------------------------------------------------------------- /src/base/b-tree/b-tree.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-tree extends i-data 16 | -------------------------------------------------------------------------------- /src/core/init/abt.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import semaphore from 'core/init/semaphore'; 10 | 11 | export default (() => semaphore('ABTReady'))(); 12 | -------------------------------------------------------------------------------- /src/core/init/flags.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export default [ 10 | 'domReady', 11 | 'ABTReady', 12 | 'stateReady', 13 | 'prefetchReady' 14 | ]; 15 | -------------------------------------------------------------------------------- /src/core/prelude/test-env/import/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | globalThis.importModule = (moduleId: string): any => __webpack_require__(moduleId); 10 | -------------------------------------------------------------------------------- /src/form/b-input/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-input') 10 | .extends('i-input-text') 11 | .dependencies('b-icon', 'b-progress-icon'); 12 | -------------------------------------------------------------------------------- /src/form/b-select/i18n/en.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | module.exports = { 10 | 'b-select': { 11 | 'Required field': 'Required field' 12 | } 13 | }; 14 | -------------------------------------------------------------------------------- /src/super/i-input/i18n/en.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | module.exports = { 10 | 'i-input': { 11 | 'Required field': 'Required field' 12 | } 13 | }; 14 | -------------------------------------------------------------------------------- /src/super/i-input/i18n/ru.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | module.exports = { 10 | 'i-input': { 11 | 'Required field': 'Обязательное поле' 12 | } 13 | }; 14 | -------------------------------------------------------------------------------- /src/base/b-router/b-router.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-router extends i-data 16 | -------------------------------------------------------------------------------- /src/base/b-slider/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-slider') 10 | .extends('i-data') 11 | .libs('core/component/directives/resize-observer'); 12 | -------------------------------------------------------------------------------- /src/core/component/queue-emitter/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export interface EventListener { 10 | event: Set; 11 | cb: Function; 12 | } 13 | -------------------------------------------------------------------------------- /src/core/component/reflection/types.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | isSmartComponent = /-functional$/, 11 | isAbstractComponent = /^[iv]-/; 12 | -------------------------------------------------------------------------------- /src/dummies/b-dummy/b-dummy.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dummy extends i-data 16 | -------------------------------------------------------------------------------- /src/entries/p-v4-components-demo.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import '../core'; 10 | import '../global/g-def'; 11 | import '../pages/p-v4-components-demo'; 12 | -------------------------------------------------------------------------------- /src/form/b-checkbox/i18n/en.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | module.exports = { 10 | 'b-checkbox': { 11 | 'Required field': 'Required field' 12 | } 13 | }; 14 | -------------------------------------------------------------------------------- /src/form/b-checkbox/i18n/ru.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | module.exports = { 10 | 'b-checkbox': { 11 | 'Required field': 'Обязательное поле' 12 | } 13 | }; 14 | -------------------------------------------------------------------------------- /src/form/b-select/i18n/ru.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | module.exports = { 10 | 'b-select': { 11 | 'Required field': 'Обязательное поле' 12 | } 13 | }; 14 | -------------------------------------------------------------------------------- /src/super/i-block/directives/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | //#if runtime has directives/event 10 | import 'super/i-block/directives/event'; 11 | //#endif 12 | -------------------------------------------------------------------------------- /src/super/i-input-text/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import symbolGenerator from 'core/symbol'; 10 | 11 | export const 12 | $$ = symbolGenerator(); 13 | -------------------------------------------------------------------------------- /src/core/init/prefetch.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import semaphore from 'core/init/semaphore'; 10 | 11 | export default (() => semaphore('prefetchReady'))(); 12 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page1/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('p-v4-dynamic-page1') 10 | .extends('i-dynamic-page') 11 | .dependencies('b-button'); 12 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page2/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('p-v4-dynamic-page2') 10 | .extends('i-dynamic-page') 11 | .dependencies('b-button'); 12 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page3/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('p-v4-dynamic-page3') 10 | .extends('i-dynamic-page') 11 | .dependencies('b-button'); 12 | -------------------------------------------------------------------------------- /src/super/i-block/modules/state/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/modules/state 2 | 3 | This module provides a class with some helper methods to initialize a component state. 4 | 5 | ```js 6 | this.state.initFromStorage(); 7 | this.state.resetStorage(); 8 | 9 | this.state.initFromRouter(); 10 | this.state.resetRouter(); 11 | ``` 12 | -------------------------------------------------------------------------------- /tests/utils/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export interface GetCurrentTestOptions { 10 | testDirPath?: string; 11 | runnerPath?: string; 12 | } 13 | 14 | -------------------------------------------------------------------------------- /src/base/b-bottom-slide/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-bottom-slide') 10 | .extends('i-block') 11 | .libs('core/component/directives/resize-observer'); 12 | -------------------------------------------------------------------------------- /src/core/prelude/dom/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import 'core/prelude/dom/element'; 10 | import 'core/prelude/dom/image'; 11 | import 'core/prelude/dom/shim'; 12 | -------------------------------------------------------------------------------- /src/global/g-def/consts.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | /** 10 | * This file is deprecated 11 | * @deprecated 12 | */ 13 | 14 | @import "global/g-def/const.styl" 15 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | V4Fire Client Core Library 2 | ========================== 3 | 4 | [![npm version](https://badge.fury.io/js/%40v4fire%2Fclient.svg)](https://badge.fury.io/js/%40v4fire%2Fclient) 5 | [![build status](https://github.com/v4fire/Client/workflows/build/badge.svg?branch=master)](https://github.com/V4Fire/Client/actions?query=workflow%3Abuild) 6 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-lfc/b-dummy-lfc.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dummy-lfc extends i-data 16 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-sync/b-dummy-sync.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dummy-sync extends i-data 16 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-state/b-dummy-state.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dummy-state extends i-data 16 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-watch/b-dummy-watch.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dummy-watch extends i-data 16 | -------------------------------------------------------------------------------- /src/dummies/b-dummy/demo.js: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | module.exports = [ 12 | { 13 | attrs: { 14 | id: 'dummy-component' 15 | } 16 | } 17 | ]; 18 | -------------------------------------------------------------------------------- /src/form/b-button/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type ButtonType = 10 | 'submit' | 11 | 'button' | 12 | 'link' | 13 | 'file' | 14 | T; 15 | -------------------------------------------------------------------------------- /src/form/b-select/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | package('b-select') 10 | .extends('i-input-text') 11 | .dependencies( 12 | 'b-icon', 13 | 'b-progress-icon' 14 | ); 15 | -------------------------------------------------------------------------------- /src/form/b-textarea/i18n/en.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | module.exports = { 10 | 'b-text-area': { 11 | 'Characters left: {limit}': 'Characters left: {limit}' 12 | } 13 | }; 14 | -------------------------------------------------------------------------------- /src/form/b-textarea/i18n/ru.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | module.exports = { 10 | 'b-text-area': { 11 | 'Characters left: {limit}': 'Символов осталось: {limit}' 12 | } 13 | }; 14 | -------------------------------------------------------------------------------- /src/super/i-block/directives/event/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | cache = new WeakMap(), 11 | commaRgxp = /\s*,\s*/g, 12 | keyValRgxp = /\.key\.([^.]*)/; 13 | -------------------------------------------------------------------------------- /src/super/i-dynamic-page/i-dynamic-page.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-page/i-page.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | i-dynamic-page extends i-page 16 | -------------------------------------------------------------------------------- /src/traits/i-visible/i-visible.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | $p = { 10 | helpers: true 11 | } 12 | 13 | i-visible 14 | if $p.helpers 15 | &_hidden_true 16 | display none 17 | -------------------------------------------------------------------------------- /src/core/component/directives/resize-observer/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | DIRECTIVE_BIND: unique symbol = Symbol('Indicator for observable bound via a directive'); 11 | -------------------------------------------------------------------------------- /src/super/i-block/modules/event-emitter/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const emitLikeEvents = [ 10 | 'emit', 11 | 'fire', 12 | 'dispatch', 13 | 'dispatchEvent' 14 | ]; 15 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-text/demo.js: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | module.exports = [ 12 | { 13 | attrs: { 14 | id: 'dummy-text-component' 15 | } 16 | } 17 | ]; 18 | -------------------------------------------------------------------------------- /src/form/b-radio-button/b-radio-button.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "form/b-checkbox/b-checkbox.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-radio-button extends b-checkbox 16 | -------------------------------------------------------------------------------- /src/global/g-debug/g-debug.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | .jasmine_html-reporter 10 | position fixed 11 | top 0 12 | display none 13 | 14 | .jasmine-failure-list 15 | display block 16 | -------------------------------------------------------------------------------- /src/super/i-page/i-page.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-data'|b as placeholder 12 | 13 | - template index() extends ['i-data'].index 14 | -------------------------------------------------------------------------------- /src/super/i-static-page/i-static-page-ds.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | $p = { 10 | 11 | } 12 | 13 | i-static-page 14 | display flex 15 | flex-direction column 16 | min-height 100vh 17 | -------------------------------------------------------------------------------- /src/core/helpers/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | /** 10 | * [[include:core/helpers/README.md]] 11 | * @packageDocumentation 12 | */ 13 | 14 | export * from '@v4fire/core/core/helpers'; 15 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-decorators/b-dummy-decorators.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dummy-decorators extends i-data 16 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-text/b-dummy-text.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-input-text/i-input-text.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dummy-text extends i-input-text 16 | -------------------------------------------------------------------------------- /src/super/i-block/modules/vdom/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { RenderObject } from 'core/component'; 10 | 11 | export const 12 | tplCache = Object.createDict(); 13 | -------------------------------------------------------------------------------- /.tsconfig: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@v4fire/core/.tsconfig", 3 | "compilerOptions": { 4 | "module": "ES2020", 5 | "moduleResolution": "node" 6 | }, 7 | "include": [ 8 | "./node_modules/@v4fire/core/*", 9 | "src/**/*.ts", 10 | "tests/**/*.ts", 11 | "ts-definitions/**/*.ts" 12 | ], 13 | "files": [ 14 | "./index.d.ts" 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /src/core/component/decorators/README.md: -------------------------------------------------------------------------------- 1 | # core/component/decorators 2 | 3 | This module provides a bunch of decorators to annotate a component. 4 | 5 | ```typescript 6 | export default class bExample { 7 | @prop(String) 8 | readonly foo: string; 9 | 10 | @watch('foo') 11 | onFoo() { 12 | console.log('Foo was changed'); 13 | } 14 | } 15 | ``` 16 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-async-render/b-dummy-async-render.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dummy-async-render extends i-data 16 | -------------------------------------------------------------------------------- /src/form/b-checkbox/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type Value = CanUndef; 10 | export type FormValue = Value; 11 | export type CheckType = true | 'indeterminate'; 12 | -------------------------------------------------------------------------------- /src/form/b-input-hidden/b-input-hidden.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-input/i-input.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-input-hidden extends i-input 16 | display none 17 | -------------------------------------------------------------------------------- /src/base/b-dynamic-page/b-dynamic-page.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-dynamic-page/i-dynamic-page.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dynamic-page extends i-dynamic-page 16 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-control-list/b-dummy-control-list.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-block/i-block.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dummy-control-list extends i-block 16 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/b-dummy-module-loader.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dummy-module-loader extends i-data 16 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-state/b-dummy-state.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-data'|b as placeholder 12 | 13 | - template index() extends ['i-data'].index 14 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-sync/b-dummy-sync.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-data'|b as placeholder 12 | 13 | - template index() extends ['i-data'].index 14 | -------------------------------------------------------------------------------- /src/super/i-block/modules/lfc/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type iBlock from 'super/i-block/i-block'; 10 | 11 | export type Cb = (this: CTX) => R; 12 | -------------------------------------------------------------------------------- /src/super/i-dynamic-page/i-dynamic-page.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-page'|b as placeholder 12 | 13 | - template index() extends ['i-page'].index 14 | -------------------------------------------------------------------------------- /src/super/i-input-text/i-input-text.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-input'|b as placeholder 12 | 13 | - template index() extends ['i-input'].index 14 | -------------------------------------------------------------------------------- /src/base/b-virtual-scroll-new/modules/observer/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | /** 10 | * Group for async operations of the observer module. 11 | */ 12 | export const observerAsyncGroup = '[[OBSERVER]]'; 13 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/b-dummy-module1/b-dummy-module1.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dummy-module1 extends i-data 16 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/b-dummy-module2/b-dummy-module2.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-dummy-module2 extends i-data 16 | -------------------------------------------------------------------------------- /src/form/b-icon-button/b-icon-button.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "form/b-button/b-button.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-icon-button extends b-button({skipDsInheritance: true}) 16 | -------------------------------------------------------------------------------- /src/form/b-button/demo.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | module.exports = [ 10 | { 11 | attrs: { 12 | ':theme': "'demo'" 13 | }, 14 | 15 | content: { 16 | default: 'Hello world' 17 | } 18 | } 19 | ]; 20 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page1/p-v4-dynamic-page1.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-dynamic-page/i-dynamic-page.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | p-v4-dynamic-page1 extends i-dynamic-page 16 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page2/p-v4-dynamic-page2.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-dynamic-page/i-dynamic-page.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | p-v4-dynamic-page2 extends i-dynamic-page 16 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page3/p-v4-dynamic-page3.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-dynamic-page/i-dynamic-page.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | p-v4-dynamic-page3 extends i-dynamic-page 16 | -------------------------------------------------------------------------------- /src/super/i-block/modules/opt/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type MemoizedLiteral = 10 | Readonly> | 11 | readonly T[]; 12 | 13 | export type IfOnceValue = 0 | 1 | 2; 14 | -------------------------------------------------------------------------------- /src/traits/i-icon/modules/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export interface Icon { 10 | id: string; 11 | content: string; 12 | viewBox: string; 13 | stringify(): string; 14 | destroy(): void; 15 | } 16 | -------------------------------------------------------------------------------- /src/core/abt/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/core/browser/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type Pattern = string | RegExp | PatternFn; 10 | 11 | export type PatternFn = (userAgent: string) => [CanUndef, CanUndef] | null; 12 | 13 | -------------------------------------------------------------------------------- /src/core/html/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/core/init/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/pages/p-v4-components-demo/p-v4-components-demo.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-static-page/i-static-page.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | p-v4-components-demo extends i-static-page 16 | -------------------------------------------------------------------------------- /tests/helpers/bom/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.19.0 (2022-04-06) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Migrated to TS 17 | -------------------------------------------------------------------------------- /tests/helpers/dom/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.19.0 (2022-04-06) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Migrated to TS 17 | -------------------------------------------------------------------------------- /tests/helpers/request/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.19.0 (2022-04-06) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Migrated to TS 17 | -------------------------------------------------------------------------------- /tests/helpers/router/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.19.0 (2022-04-06) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Migrated to TS 17 | -------------------------------------------------------------------------------- /tests/helpers/scroll/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.19.0 (2022-04-06) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Migrated to TS 17 | -------------------------------------------------------------------------------- /tests/helpers/utils/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.19.0 (2022-04-06) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Migrated to TS 17 | -------------------------------------------------------------------------------- /src/core/async/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/core/component/const/symbols.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | asyncLabel = Symbol('Component async label'), 11 | defaultWrapper = Symbol('Default wrapper'); 12 | 13 | export const 14 | PARENT = {}; 15 | -------------------------------------------------------------------------------- /src/core/cookies/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.36 (2020-07-13) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/core/event/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/core/session/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/core/worker/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-state/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0 (2021-07-27) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/global/g-icon/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.90 (2020-10-22) 13 | 14 | #### :nail_care: Polish 15 | 16 | * Added documentation 17 | -------------------------------------------------------------------------------- /src/models/demo/checkbox/mocks.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export default { 10 | GET: [ 11 | { 12 | response: { 13 | value: 'foo', 14 | label: 'Foo', 15 | check: true 16 | } 17 | } 18 | ] 19 | }; 20 | -------------------------------------------------------------------------------- /src/super/i-block/modules/block/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | fakeCtx = document.createElement('div'), 11 | modRgxpCache = Object.createDict(); 12 | 13 | export const 14 | elRxp = /_+/; 15 | -------------------------------------------------------------------------------- /src/super/i-block/modules/opt/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { MemoizedLiteral } from 'super/i-block/modules/opt/interface'; 10 | 11 | export const 12 | literalCache = Object.createDict(); 13 | -------------------------------------------------------------------------------- /src/super/i-data/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const providerMethods = [ 10 | 'url', 11 | 'base', 12 | 'get', 13 | 'peek', 14 | 'post', 15 | 'add', 16 | 'upd', 17 | 'del', 18 | 'createRequest' 19 | ]; 20 | -------------------------------------------------------------------------------- /src/traits/i-size/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.49 (2020-08-03) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/traits/i-width/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.49 (2020-08-03) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /tests/helpers/component/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.19.0 (2022-04-06) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Migrated to TS 17 | -------------------------------------------------------------------------------- /tests/helpers/gestures/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.19.0 (2022-04-06) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Migrated to TS 17 | -------------------------------------------------------------------------------- /src/base/b-remote-provider/b-remote-provider.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-remote-provider extends i-data 16 | &:empty 17 | display none 18 | 19 | -------------------------------------------------------------------------------- /src/core/component/engines/zero/context/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const reservedAttrs = Object.createDict({ 10 | is: true, 11 | key: true, 12 | ref: true, 13 | slot: true, 14 | 'slot-scope': true 15 | }); 16 | -------------------------------------------------------------------------------- /src/core/component/event/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type ResetType = 10 | 'load' | 11 | 'load.silence' | 12 | 'router' | 13 | 'router.silence' | 14 | 'storage' | 15 | 'storage.silence' | 16 | 'silence'; 17 | -------------------------------------------------------------------------------- /src/core/component/ref/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/core/prelude/dom/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-lfc/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.211 (2021-07-21) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-sync/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.211 (2021-07-21) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-text/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.199 (2021-06-16) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/models/demo/list/mocks.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export default { 10 | GET: [ 11 | { 12 | response: [ 13 | {label: 'Foo', value: 'foo'}, 14 | {label: 'Bar', value: 'bar'} 15 | ] 16 | } 17 | ] 18 | }; 19 | -------------------------------------------------------------------------------- /src/core/component/event/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/core/component/filters/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/core/component/method/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/core/component/render/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/core/component/traverse/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0 (2021-07-27) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-watch/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.211 (2021-07-21) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/form/b-icon-button/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.201 (2021-06-17) 13 | 14 | #### :memo: Documentation 15 | 16 | * Added documentation 17 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page1/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page2/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page3/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/core/component/directives/hook/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.97 (2020-11-11) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/core/component/queue-emitter/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-async-render/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.207 (2021-06-28) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-control-list/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.211 (2021-07-21) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-decorators/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.216 (2021-07-26) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/pages/p-v4-components-demo/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/super/i-block/modules/cache/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.44 (2020-07-30) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/super/i-block/modules/friend/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.46 (2020-07-31) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/super/i-block/modules/info-render/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.30.0 (2022-10-19) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/super/i-block/modules/lfc/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/super/i-block/modules/opt/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.46 (2020-07-31) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/super/i-block/modules/storage/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.46 (2020-07-31) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/traits/i-size/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type Size = 10 | 'xxs' | 11 | 'xs' | 12 | 's' | 13 | 'm' | 14 | 'l' | 15 | 'xl' | 16 | 'xxl'; 17 | 18 | export type SizeDictionary = Dictionary< 19 | Size 20 | >; 21 | -------------------------------------------------------------------------------- /src/core/component/render-function/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | /** 10 | * [[include:core/component/render-function/README.md]] 11 | * @packageDocumentation 12 | */ 13 | 14 | export * from 'core/component/render-function/render'; 15 | -------------------------------------------------------------------------------- /src/form/b-radio-button/b-radio-button.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'form/b-checkbox'|b as placeholder 12 | 13 | - template index() extends ['b-checkbox'].index 14 | - nativeInputType = "'radio'" 15 | -------------------------------------------------------------------------------- /src/super/i-block/directives/event/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.46 (2020-07-31) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/super/i-block/modules/analytics/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.46 (2020-07-31) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/super/i-block/modules/decorators/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.46 (2020-07-31) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/config/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.85 (2020-10-09) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Provided a graph of components to `components` 17 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/b-dummy-module1/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0 (2021-07-27) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/b-dummy-module2/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0 (2021-07-27) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /src/super/i-block/i-block-ds.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | $p = { 10 | focusedBorderColor: #444 11 | } 12 | 13 | i-block 14 | if $p.lockHelpers 15 | &_disabled_true &__root-wrapper 16 | &_progress_true &__root-wrapper 17 | opacity 0.8 18 | -------------------------------------------------------------------------------- /src/super/i-block/modules/event-emitter/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.46 (2020-07-31) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/traits/i-access/i-access.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | $p = { 10 | helpers: true 11 | } 12 | 13 | i-access 14 | if $p.helpers 15 | &_disabled_true 16 | cursor default 17 | 18 | &_disabled_true &__over-wrapper 19 | display block 20 | -------------------------------------------------------------------------------- /src/core/prelude/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import 'core/prelude/webpack'; 10 | import '@v4fire/core/core/prelude'; 11 | import 'core/prelude/dom'; 12 | 13 | //#if runtime has prelude/test-env 14 | import 'core/prelude/test-env'; 15 | //#endif 16 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-decorators/b-dummy-decorators.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-data'|b as placeholder 12 | 13 | - template index() extends ['i-data'].index 14 | - block body 15 | += self.slot() 16 | -------------------------------------------------------------------------------- /src/form/b-input-hidden/b-input-hidden.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-input'|b as placeholder 12 | 13 | - template index() extends ['i-input'].index 14 | - block body 15 | += self.hiddenInput() 16 | -------------------------------------------------------------------------------- /src/icons/b-progress-icon/README.md: -------------------------------------------------------------------------------- 1 | # icons/b-progress-icon 2 | 3 | This module provides a component to indicate loading. 4 | 5 | ## Synopsis 6 | 7 | * The component extends [[iBlock]]. 8 | 9 | * The component is functional. 10 | 11 | * The component can be used as a flyweight. 12 | 13 | * By default, the root tag of the component is ``. 14 | 15 | ## Usage 16 | 17 | ``` 18 | < b-progress-icon 19 | ``` 20 | -------------------------------------------------------------------------------- /src/super/i-block/modules/module-loader/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { Module } from 'super/i-block/modules/module-loader/interface'; 10 | 11 | export const 12 | cache = new Map(), 13 | cachedModules = []; 14 | -------------------------------------------------------------------------------- /config/production.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | const 12 | config = include('config/default'); 13 | 14 | module.exports = config.createConfig({dirs: [__dirname], mod: '@super/config/production'}, { 15 | __proto__: config 16 | }); 17 | -------------------------------------------------------------------------------- /src/base/b-bottom-slide/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { HeightMode } from 'base/b-bottom-slide/interface'; 10 | 11 | export const heightMode = >Object.createDict({ 12 | full: true, 13 | content: true 14 | }); 15 | -------------------------------------------------------------------------------- /src/base/b-window/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type TitleValue = string | ((ctx: T) => string); 10 | 11 | export interface StageTitles extends Dictionary> { 12 | '[[DEFAULT]]'?: TitleValue; 13 | } 14 | -------------------------------------------------------------------------------- /src/pages/p-v4-components-demo/b-v4-component-demo/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/super/i-static-page/modules/provider-data-store/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.37 (2020-07-20) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | -------------------------------------------------------------------------------- /src/base/b-remote-provider/b-remote-provider.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-data'|b as placeholder 12 | 13 | - template index() extends ['i-data'].index 14 | - block body 15 | - super 16 | += self.slot() 17 | -------------------------------------------------------------------------------- /src/core/dom/resize-observer/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | RESIZE_WATCHER_OBSERVABLE_STORE: unique symbol = Symbol('A store of observable elements that are bound to the element'), 11 | RESIZE_WATCHER_ASYNC_GROUP = '[[RESIZE_WATCHER]]'; 12 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-text/b-dummy-text.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-input-text'|b as placeholder 12 | 13 | - template index() extends ['i-input-text'].index 14 | - block body 15 | += self.nativeInput() 16 | -------------------------------------------------------------------------------- /src/icons/b-progress-icon/b-progress-icon.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-block'|b as placeholder 12 | 13 | - template index() extends ['i-block'].index 14 | - block body 15 | < .&__loader 16 | < .&__i 17 | -------------------------------------------------------------------------------- /src/super/i-block/directives/event/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block/directives/event 2 | 3 | This module provides a directive to attach event listeners to a DOM node. In difference of `v-bind` directive, this directive supports some extra events, like "dnd". 4 | 5 | ``` 6 | < .&__scroller v-e:dnd = { & 7 | onDragStart: onScrollerDragStart, 8 | onDrag: onScrollerDrag, 9 | onScrollerDragEnd: onScrollerDragEnd 10 | } . 11 | ``` 12 | -------------------------------------------------------------------------------- /src/base/b-window/test-dummy.window.ss: -------------------------------------------------------------------------------- 1 | - namespace b-window 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - eval 12 | ? @@saveTplDir(__dirname, 'windowSlotTestDummy') 13 | 14 | - block index->windowSlotTestDummy(nms) 15 | < ?.${nms} 16 | < .&__bla 17 | Hello world! 18 | -------------------------------------------------------------------------------- /src/core/component/flyweight/README.md: -------------------------------------------------------------------------------- 1 | # core/component/flyweight 2 | 3 | This module provides API to create a flyweight component. The flyweight components is a component borrows a context 4 | from its parent and injects own render function to the parent render function. 5 | The constructed component is stateless and this mechanism is pretty similar to "functional component" API in some MVVM libraries, 6 | but provides more flexible API. 7 | -------------------------------------------------------------------------------- /src/core/component/functional/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import symbolGenerator from 'core/symbol'; 10 | 11 | export const 12 | $$ = symbolGenerator(); 13 | 14 | export const componentOpts = [ 15 | 'filters', 16 | 'directives', 17 | 'components' 18 | ]; 19 | -------------------------------------------------------------------------------- /src/core/prelude/webpack.ts: -------------------------------------------------------------------------------- 1 | /* eslint-disable camelcase,no-new-func */ 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | const 12 | ctx = Function('return this')(); 13 | 14 | __webpack_nonce__ = ctx[CSP_NONCE_STORE]; 15 | __webpack_public_path__ = ctx.PUBLIC_PATH ?? PUBLIC_PATH; 16 | -------------------------------------------------------------------------------- /src/pages/p-v4-components-demo/p-v4-components-demo.ess: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-static-page/i-static-page.interface.ss'|b as placeholder 12 | 13 | - template index() extends ['i-static-page.interface'].index 14 | -------------------------------------------------------------------------------- /src/super/i-block/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | /** 10 | * Enum of available component statuses 11 | */ 12 | export enum statuses { 13 | destroyed = -1, 14 | inactive = 0, 15 | unloaded = 1, 16 | loading = 2, 17 | beforeReady = 3, 18 | ready = 4 19 | } 20 | -------------------------------------------------------------------------------- /src/traits/i-history/i-history.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - @@ignore 12 | - template index(@params, content) 13 | < ?.${@self.name()} 14 | < .&__history :class = [componentId] 15 | += @self.slot('default') 16 | {content} 17 | -------------------------------------------------------------------------------- /src/base/b-router/b-router.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-data'|b as placeholder 12 | 13 | - template index() extends ['i-data'].index 14 | - block body 15 | /// The slot to write auto tests 16 | += self.slot() 17 | -------------------------------------------------------------------------------- /src/core/component/directives/resize-observer/README.md: -------------------------------------------------------------------------------- 1 | # core/component/directives/resize 2 | 3 | This module provides a directive to track changes in the size of DOM elements using `ResizeObserver`. 4 | 5 | ## Usage 6 | 7 | ``` 8 | < .&__class v-resize-observer = { & 9 | callback: () => emit('elementResized') 10 | } . 11 | ``` 12 | 13 | For more examples go to [`core/dom/resize-observer`](core/dom/resize-observer/index.ts). 14 | -------------------------------------------------------------------------------- /src/core/component/engines/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | /** 10 | * [[include:core/component/engines/README.md]] 11 | * @packageDocumentation 12 | */ 13 | 14 | import 'core/component/engines/directive'; 15 | 16 | export * from 'core/component/engines/engine'; 17 | -------------------------------------------------------------------------------- /src/core/component/state/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { ExperimentsSet } from 'core/abt'; 10 | 11 | export interface State { 12 | isAuth?: boolean; 13 | isOnline?: boolean; 14 | lastOnlineDate?: Date; 15 | experiments?: ExperimentsSet; 16 | } 17 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/b-dummy-module1/b-dummy-module1.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-data'|b as placeholder 12 | 13 | - template index() extends ['i-data'].index 14 | - block body 15 | Dummy module #1 16 | -------------------------------------------------------------------------------- /src/dummies/b-dummy-module-loader/b-dummy-module2/b-dummy-module2.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-data'|b as placeholder 12 | 13 | - template index() extends ['i-data'].index 14 | - block body 15 | Dummy module #2 16 | -------------------------------------------------------------------------------- /src/icons/b-progress-icon/b-progress-icon-ds.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | $p = { 10 | color: #6153B9 11 | } 12 | 13 | b-progress-icon 14 | &__loader 15 | &__i 16 | border ($p.size / 4) solid alpha($p.color, 0.4) 17 | 18 | &__i 19 | border-left-color $p.color 20 | -------------------------------------------------------------------------------- /src/core/component/interface/link.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export interface SyncLink { 10 | path: string; 11 | sync(value?: T): void; 12 | } 13 | 14 | export type SyncLinkCache = Map< 15 | string | object, 16 | Dictionary> 17 | >; 18 | -------------------------------------------------------------------------------- /src/core/component/register/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | /** 10 | * [[include:core/component/register/README.md]] 11 | * @packageDocumentation 12 | */ 13 | 14 | export * from 'core/component/register/helpers'; 15 | export * from 'core/component/register/decorator'; 16 | -------------------------------------------------------------------------------- /src/super/i-data/i-data.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-block'|b as placeholder 12 | 13 | - template index() extends ['i-block'].index 14 | - block slotAttrs 15 | - super 16 | ? Object.assign(slotAttrs, {':db': 'db'}) 17 | -------------------------------------------------------------------------------- /src/super/i-static-page/modules/page-meta-data/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export type LinkAttributes = { 10 | [Property in keyof HTMLLinkElement]: string; 11 | }; 12 | 13 | export type MetaAttributes = { 14 | [Property in keyof HTMLMetaElement]: string; 15 | }; 16 | -------------------------------------------------------------------------------- /src/base/b-bottom-slide/test/index.js: -------------------------------------------------------------------------------- 1 | // @ts-check 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | /** 12 | * @typedef {import('playwright').Page} Page 13 | */ 14 | 15 | const 16 | u = include('tests/utils').default; 17 | 18 | module.exports = (...args) => u.getCurrentTest()(...args); 19 | -------------------------------------------------------------------------------- /src/core/component/construct/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export interface InitBeforeCreateStateOptions { 10 | addMethods?: boolean; 11 | implementEventAPI?: boolean; 12 | } 13 | 14 | export interface InitBeforeDataCreateStateOptions { 15 | tieFields?: boolean; 16 | } 17 | -------------------------------------------------------------------------------- /src/core/component/directives/image/README.md: -------------------------------------------------------------------------------- 1 | # core/component/directives/image 2 | 3 | This module provides a directive to load images by using `background-image` or `src`. 4 | 5 | ## Usage 6 | 7 | ``` 8 | < .&__not-img v-image = { & 9 | src: 'https://fakeimg.com' 10 | } . 11 | 12 | < img.&__img v-image = { & 13 | src: 'https://fakeimg.com' 14 | } . 15 | ``` 16 | 17 | For more details go to [`core/dom/image`](core/dom/image/index.ts) 18 | -------------------------------------------------------------------------------- /src/core/component/engines/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { VNode as SuperVNode } from 'vue'; 10 | import type { ComponentInterface } from 'core/component/interface'; 11 | 12 | export interface VNode extends SuperVNode { 13 | fakeContext?: ComponentInterface; 14 | } 15 | -------------------------------------------------------------------------------- /src/form/b-textarea/b-textarea-ds.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | $p = { 10 | invalidColor: #F00 11 | } 12 | 13 | b-textarea 14 | &__input 15 | max-height 10em 16 | 17 | &__limit 18 | padding 0.3em 19 | font-size 0.7em 20 | 21 | &_warning_true 22 | color $p.invalidColor 23 | -------------------------------------------------------------------------------- /src/models/demo/form/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import Demo, { provider, Mocks } from 'models/demo'; 10 | 11 | @provider('demo') 12 | export class Form extends Demo { 13 | override baseURL: string = '/form'; 14 | override mocks: Mocks = import('models/demo/form/mocks'); 15 | } 16 | -------------------------------------------------------------------------------- /src/super/i-block/README.md: -------------------------------------------------------------------------------- 1 | # super/i-block 2 | 3 | This module provides a super component for all other components. 4 | 5 | ```typescript 6 | import iBlock, { component, prop, field } from 'super/i-block/i-block'; 7 | 8 | @component() 9 | export default class bExample extends iBlock { 10 | @prop(Number) 11 | a: number; 12 | 13 | @prop(Number) 14 | b: number; 15 | 16 | @field(ctx => ctx.a + ctx.b) 17 | result: number; 18 | } 19 | ``` 20 | -------------------------------------------------------------------------------- /src/super/i-input-text/modules/mask/handlers/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export * from 'super/i-input-text/modules/mask/handlers/input'; 10 | export * from 'super/i-input-text/modules/mask/handlers/delete'; 11 | export * from 'super/i-input-text/modules/mask/handlers/navigate'; 12 | -------------------------------------------------------------------------------- /src/core/html/README.md: -------------------------------------------------------------------------------- 1 | # core/html 2 | 3 | This module provides a bunch of helper functions to work with HTML tags and attributes. 4 | 5 | ## getSrcSet 6 | 7 | Returns a srcset string for an image tag by the specified resolution map. 8 | 9 | ```js 10 | import { getSrcSet } from 'core/html'; 11 | 12 | // 'http://img-hdpi.png 2x, http://img-xhdpi.png 3x' 13 | console.log(getSrcSet({'2x': 'http://img-hdpi.png', '3x': 'http://img-xhdpi.png'})); 14 | ``` 15 | -------------------------------------------------------------------------------- /src/form/b-select/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import symbolGenerator from 'core/symbol'; 10 | import type bSelect from 'form/b-select/b-select'; 11 | 12 | export const 13 | $$ = symbolGenerator(); 14 | 15 | export const openedSelect = { 16 | link: >null 17 | }; 18 | -------------------------------------------------------------------------------- /src/super/i-static-page/modules/page-meta-data/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.74.8 (2024-09-17) 13 | 14 | #### :bug: Bug Fix 15 | 16 | * Fixed setting `document.title` to avoid potential XSS `PageMetaData` 17 | -------------------------------------------------------------------------------- /src/base/b-virtual-scroll/b-virtual-scroll.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-virtual-scroll extends i-data 16 | width 100% 17 | 18 | &__container 19 | position relative 20 | box-sizing border-box 21 | width 100% 22 | -------------------------------------------------------------------------------- /src/icons/b-progress-icon/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.51 (2020-08-04) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | 18 | #### :nail_care: Polish 19 | 20 | * Added documentation 21 | -------------------------------------------------------------------------------- /src/models/demo/list/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import Demo, { provider, Mocks } from 'models/demo'; 10 | 11 | @provider('demo') 12 | export default class List extends Demo { 13 | override baseURL: string = '/list'; 14 | override mocks: Mocks = import('models/demo/list/mocks'); 15 | } 16 | -------------------------------------------------------------------------------- /src/base/b-remote-provider/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.55 (2020-08-05) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | 18 | #### :nail_care: Polish 19 | 20 | * Added documentation 21 | -------------------------------------------------------------------------------- /src/super/i-block/modules/field/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export interface KeyGetter { 10 | (key: unknown, data: NonNullable): K; 11 | } 12 | 13 | export interface ValueGetter { 14 | (key: unknown, data: NonNullable): R; 15 | } 16 | -------------------------------------------------------------------------------- /src/base/b-virtual-scroll-new/b-virtual-scroll-new.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-virtual-scroll-new extends i-data 16 | width 100% 17 | 18 | &__container 19 | position relative 20 | box-sizing border-box 21 | width 100% 22 | -------------------------------------------------------------------------------- /src/core/component/reflection/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const 10 | bindingRgxp = /(?:Prop|Store)$/, 11 | propRgxp = /Prop$|^\$props/, 12 | attrRgxp = /^\$attrs/, 13 | storeRgxp = /Store$/, 14 | hasSeparator = /\./; 15 | 16 | export const 17 | dsComponentsMods = DS_COMPONENTS_MODS; 18 | -------------------------------------------------------------------------------- /src/core/component/const/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export * from 'core/component/const/cache'; 10 | export * from 'core/component/const/symbols'; 11 | export * from 'core/component/const/enums'; 12 | export * from 'core/component/const/emitters'; 13 | export * from 'core/component/const/validators'; 14 | -------------------------------------------------------------------------------- /src/models/demo/checkbox/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import Demo, { provider, Mocks } from 'models/demo'; 10 | 11 | @provider('demo') 12 | export default class Checkbox extends Demo { 13 | override baseURL: string = '/checkbox'; 14 | override mocks: Mocks = import('models/demo/checkbox/mocks'); 15 | } 16 | -------------------------------------------------------------------------------- /src/form/b-form/b-form.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | @import "traits/i-visible/i-visible.styl" 11 | 12 | $p = { 13 | visibleHelpers: false 14 | } 15 | 16 | b-form extends i-data 17 | // @stlint-disable 18 | i-visible({helpers: $p.visibleHelpers}) 19 | // @stlint-enable 20 | -------------------------------------------------------------------------------- /src/super/i-page/i-page.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | @import "traits/i-visible/i-visible.styl" 11 | 12 | $p = { 13 | visibleHelpers: false 14 | } 15 | 16 | i-page extends i-data 17 | // @stlint-disable 18 | i-visible({helpers: $p.visibleHelpers}) 19 | // @stlint-enable 20 | -------------------------------------------------------------------------------- /src/traits/i-size/README.md: -------------------------------------------------------------------------------- 1 | # traits/i-size 2 | 3 | This module provides a trait for a component that needs to implement the "size" behavior. 4 | 5 | ## Synopsis 6 | 7 | * This module provides an abstract class, not a component. 8 | 9 | * The trait contains only TS logic. 10 | 11 | ## Modifiers 12 | 13 | | Name | Description | Values | Default | 14 | |--------|--------------------|----------|---------| 15 | | `size` | The component size | `String` | `'m'` | 16 | -------------------------------------------------------------------------------- /src/models/demo/nested-list/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import Demo, { provider, Mocks } from 'models/demo'; 10 | 11 | @provider('demo') 12 | export default class NestedList extends Demo { 13 | override baseURL: string = '/nested-list'; 14 | override mocks: Mocks = import('models/demo/nested-list/mocks'); 15 | } 16 | -------------------------------------------------------------------------------- /src/models/demo/pagination/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import Demo, { provider, Mocks } from 'models/demo'; 10 | 11 | @provider('demo') 12 | export default class Pagination extends Demo { 13 | override baseURL: string = '/pagination'; 14 | override mocks: Mocks = import('models/demo/pagination/mocks'); 15 | } 16 | -------------------------------------------------------------------------------- /src/super/i-block/modules/vdom/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0 (2021-07-27) 13 | 14 | #### :house: Internal 15 | 16 | * Added tests 17 | 18 | ## v3.0.0-rc.46 (2020-07-31) 19 | 20 | #### :house: Internal 21 | 22 | * Fixed ESLint warnings 23 | -------------------------------------------------------------------------------- /src/super/i-data/i-data.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-block/i-block.styl" 10 | @import "traits/i-progress/i-progress.styl" 11 | 12 | $p = { 13 | progressHelpers: false 14 | } 15 | 16 | i-data extends i-block 17 | // @stlint-disable 18 | i-progress({helpers: $p.progressHelpers}) 19 | // @stlint-enable 20 | -------------------------------------------------------------------------------- /src/super/i-input-text/i-input-text.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-input/i-input.styl" 10 | @import "traits/i-width/i-width.styl" 11 | 12 | $p = { 13 | widthHelpers: false 14 | } 15 | 16 | i-input-text extends i-input 17 | // @stlint-disable 18 | i-width({helpers: $p.widthHelpers}) 19 | // @stlint-enable 20 | -------------------------------------------------------------------------------- /src/base/b-skeleton/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.103 (2020-11-29) 13 | 14 | #### :bug: Bug Fix 15 | 16 | * Fixed a bug with slows down while scrolling on ios 17 | 18 | #### :memo: Documentation 19 | 20 | * Added `README`, `CHANGELOG` 21 | -------------------------------------------------------------------------------- /src/super/i-block/modules/module-loader/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export interface Module extends Dictionary { 10 | id?: unknown; 11 | status?: 'pending' | 'loaded' | 'failed'; 12 | import?: unknown; 13 | promise?: CanArray>; 14 | load(): Promise; 15 | wait?(): Promise; 16 | } 17 | -------------------------------------------------------------------------------- /src/traits/i-open/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.184 (2021-05-12) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Improved the trait to support auto-deriving 17 | 18 | #### :memo: Documentation 19 | 20 | * Added `README.md`, `CHANGELOG.md` 21 | -------------------------------------------------------------------------------- /src/traits/i-progress/i-progress.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | $p = { 10 | helpers: true 11 | } 12 | 13 | i-progress 14 | if $p.helpers 15 | &__progress 16 | display none 17 | 18 | &_progress_true 19 | cursor default 20 | 21 | &_progress_true &__progress 22 | &_progress_true &__over-wrapper 23 | display block 24 | -------------------------------------------------------------------------------- /src/base/b-virtual-scroll-new/interface/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export * from 'base/b-virtual-scroll-new/interface/events'; 10 | export * from 'base/b-virtual-scroll-new/interface/component'; 11 | export * from 'base/b-virtual-scroll-new/interface/requests'; 12 | export * from 'base/b-virtual-scroll-new/interface/common'; 13 | -------------------------------------------------------------------------------- /src/core/event/README.md: -------------------------------------------------------------------------------- 1 | # core/event 2 | 3 | This module extends the [core/event](https://v4fire.github.io/Core/modules/src_core_event_index.html) module from and adds a bunch of methods for browser-specific tasks. 4 | 5 | ## resolveAfterDOMLoaded 6 | 7 | Returns a promise that will be resolved after the `DOMContentLoaded` event. 8 | 9 | ```js 10 | import { resolveAfterDOMLoaded } from 'core/event'; 11 | 12 | resolveAfterDOMLoaded().then(() => { 13 | console.log('Boom!'); 14 | }); 15 | ``` 16 | -------------------------------------------------------------------------------- /src/super/i-block/modules/daemons/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.164 (2021-03-22) 13 | 14 | #### :house: Internal 15 | 16 | * Added tests 17 | 18 | ## v3.0.0-rc.46 (2020-07-31) 19 | 20 | #### :house: Internal 21 | 22 | * Fixed ESLint warnings 23 | -------------------------------------------------------------------------------- /src/base/b-virtual-scroll-new/modules/slots/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { ComponentRefs } from 'base/b-virtual-scroll-new/interface'; 10 | 11 | /** 12 | * Represents the state of slots. 13 | * [slotName: slotVisibility] 14 | */ 15 | export type SlotsStateObj = { 16 | [key in keyof ComponentRefs]: boolean; 17 | }; 18 | -------------------------------------------------------------------------------- /src/core/prelude/test-env/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | /** 10 | * [[include:core/prelude/test-env/README.md]] 11 | * @packageDocumentation 12 | */ 13 | 14 | import 'core/prelude/test-env/import'; 15 | import 'core/prelude/test-env/components'; 16 | import 'core/prelude/test-env/gestures'; 17 | import 'core/prelude/test-env/mock'; 18 | -------------------------------------------------------------------------------- /src/traits/i-items/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.122 (2021-01-13) 13 | 14 | #### :boom: Breaking Change 15 | 16 | * Trait refactoring. Using `item` instead of `option`. 17 | 18 | #### :memo: Documentation 19 | 20 | * Added `CHANGELOG`, `README` 21 | -------------------------------------------------------------------------------- /src/traits/i-open-toggle/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.184 (2021-05-12) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Improved the trait to support auto-deriving 17 | 18 | #### :memo: Documentation 19 | 20 | * Added `README.md`, `CHANGELOG.md` 21 | -------------------------------------------------------------------------------- /src/base/b-list/b-list-ds.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "icons/b-progress-icon/b-progress-icon.styl" 10 | 11 | $p = { 12 | progressIconColor: #333 13 | } 14 | 15 | b-list 16 | &__cell + &__cell 17 | margin-left 0.3em 18 | 19 | &__link-progress 20 | .b-progress-icon 21 | b-progress-icon({color: $p.progressIconColor, size: 0.6em}) 22 | -------------------------------------------------------------------------------- /src/core/component/reflection/README.md: -------------------------------------------------------------------------------- 1 | # core/component/reflection 2 | 3 | This module provides a bunch of functions to reflect component classes. 4 | 5 | ```js 6 | @component() 7 | class bButton extends iBlock { 8 | static mods = { 9 | 'opened-window': [ 10 | true, 11 | false, 12 | undefined, 13 | [false], 14 | bButton.PARENT 15 | ] 16 | }; 17 | } 18 | 19 | // {openedWindow: ['true', ['false'], bButton.PARENT]} 20 | getComponentMods(getInfoFromConstructor()); 21 | ``` 22 | -------------------------------------------------------------------------------- /src/core/dom/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.110 (2020-12-16) 13 | 14 | #### :boom: Breaking Change 15 | 16 | * Removed the default export of submodules 17 | 18 | ## v3.0.0-rc.37 (2020-07-20) 19 | 20 | #### :house: Internal 21 | 22 | * Fixed ESLint warnings 23 | -------------------------------------------------------------------------------- /src/core/prelude/i18n/storage.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Core 3 | * https://github.com/V4Fire/Core 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Core/blob/master/LICENSE 7 | */ 8 | 9 | import type { LocaleKVStorage } from 'core/prelude/i18n/interface'; 10 | 11 | import { factory } from 'core/kv-storage'; 12 | import { syncLocalStorage } from 'core/kv-storage/engines/cookie'; 13 | 14 | const 15 | storage: LocaleKVStorage = factory(syncLocalStorage); 16 | 17 | export default storage; 18 | -------------------------------------------------------------------------------- /src/super/i-block/modules/provide/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.46 (2020-07-31) 13 | 14 | #### :bug: Bug Fix 15 | 16 | * Fixed `fullElName` overloads 17 | 18 | ## v3.0.0-rc.44 (2020-07-30) 19 | 20 | #### :house: Internal 21 | 22 | * Fixed ESLint warnings 23 | -------------------------------------------------------------------------------- /src/core/component/directives/image/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { VNodeDirective } from 'core/component/engines'; 10 | import type { InitValue } from 'core/dom/image'; 11 | 12 | export interface DirectiveOptions extends VNodeDirective { 13 | modifiers: { 14 | [key: string]: boolean; 15 | }; 16 | 17 | value?: InitValue; 18 | } 19 | -------------------------------------------------------------------------------- /src/core/component/prop/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.126 (2021-01-26) 13 | 14 | #### :house: Internal 15 | 16 | * Added a feature to provide raw modifiers 17 | 18 | ## v3.0.0-rc.37 (2020-07-20) 19 | 20 | #### :house: Internal 21 | 22 | * Fixed ESLint warnings 23 | -------------------------------------------------------------------------------- /src/lang/engines/inline-html.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { LangPacs } from 'lang/interface'; 10 | 11 | /** 12 | * Implementation of a keyset collector for a build type when all translations at build time are inserted into html 13 | */ 14 | export default function inlineHtmlEngine(): LangPacs { 15 | return globalThis[LANG_PACKS]; 16 | } 17 | -------------------------------------------------------------------------------- /src/super/i-static-page/modules/theme/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | /** 10 | * [[include:super/i-static-page/modules/theme/README.md]] 11 | * @packageDocumentation 12 | */ 13 | 14 | export { default } from 'super/i-static-page/modules/theme/factory'; 15 | export { default as ThemeManager } from 'super/i-static-page/modules/theme/theme-manager'; 16 | -------------------------------------------------------------------------------- /src/assets/favicons/browserconfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | #2E2929 10 | 11 | 12 | -------------------------------------------------------------------------------- /src/base/b-dynamic-page/test/b-scroll-element-dummy/b-scroll-element-dummy.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'dummies/b-dummy'|b as placeholder 12 | 13 | - template index() extends ['b-dummy'].index 14 | - block body 15 | < ul.&__scrollable ref = scrollable | -testid = scrollable 16 | < li 17 | Scrollable item 18 | -------------------------------------------------------------------------------- /src/core/component/const/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.133 (2021-01-30) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Added a link to the global root instance 17 | 18 | ## v3.0.0-rc.37 (2020-07-20) 19 | 20 | #### :house: Internal 21 | 22 | * Fixed ESLint warnings 23 | -------------------------------------------------------------------------------- /src/core/component/decorators/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const invertedFieldMap = Object.createDict({ 10 | props: ['fields', 'systemFields'], 11 | fields: ['props', 'systemFields'], 12 | systemFields: ['props', 'fields'] 13 | }); 14 | 15 | export const tiedFieldMap = Object.createDict({ 16 | fields: true, 17 | systemFields: true 18 | }); 19 | -------------------------------------------------------------------------------- /src/core/component/field/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.126 (2021-01-26) 13 | 14 | #### :bug: Bug Fix 15 | 16 | * Fixed creation of fields of flyweight components 17 | 18 | ## v3.0.0-rc.46 (2020-07-31) 19 | 20 | #### :house: Internal 21 | 22 | * Fixed ESLint warnings 23 | -------------------------------------------------------------------------------- /src/form/b-input-hidden/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.199 (2021-06-16) 13 | 14 | #### :house: Internal 15 | 16 | * Fixed ESLint warnings 17 | 18 | #### :memo: Documentation 19 | 20 | * Added documentation 21 | 22 | #### :nail_care: Polish 23 | 24 | * Added tests 25 | -------------------------------------------------------------------------------- /src/form/b-radio-button/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.199 (2021-06-16) 13 | 14 | #### :memo: Documentation 15 | 16 | * Added documentation 17 | 18 | #### :house: Internal 19 | 20 | * Fixed ESLint warnings 21 | 22 | #### :nail_care: Polish 23 | 24 | * Added tests 25 | -------------------------------------------------------------------------------- /src/base/b-slider/b-slider.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "super/i-data/i-data.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-slider extends i-data 16 | if $p.height 17 | height $p.height 18 | 19 | &__window 20 | display flex 21 | size 100% 22 | overflow hidden 23 | 24 | &__window 25 | position relative 26 | 27 | &__view 28 | useGPU() 29 | -------------------------------------------------------------------------------- /src/base/b-dynamic-page/test/b-scroll-element-dummy/b-scroll-element-dummy.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "dummies/b-dummy/b-dummy.styl" 10 | 11 | $p = { 12 | 13 | } 14 | 15 | b-scroll-element-dummy extends b-dummy 16 | &__scrollable 17 | max-width 200px 18 | max-height 200px 19 | overflow scroll 20 | 21 | li 22 | width 600px 23 | height 600px 24 | -------------------------------------------------------------------------------- /src/core/component/directives/safe-html/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.70.0 (2024-04-17) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Supported the insertion of a primitive as a value 17 | 18 | ## v3.68.0 (2024-03-04) 19 | 20 | #### :rocket: New Feature 21 | 22 | * Initial release 23 | -------------------------------------------------------------------------------- /src/super/i-block/modules/mods/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { ModVal, ModsDecl } from 'core/component'; 10 | 11 | /** 12 | * Raw modifiers 13 | */ 14 | export type ModsTable = Dictionary; 15 | 16 | /** 17 | * Normalized modifiers 18 | */ 19 | export type ModsNTable = Dictionary>; 20 | 21 | export { ModVal, ModsDecl }; 22 | -------------------------------------------------------------------------------- /src/super/i-input-text/modules/mask/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export * from 'super/i-input-text/modules/mask/compile'; 10 | export * from 'super/i-input-text/modules/mask/init'; 11 | export * from 'super/i-input-text/modules/mask/sync'; 12 | export * from 'super/i-input-text/modules/mask/helpers'; 13 | export * from 'super/i-input-text/modules/mask/handlers'; 14 | -------------------------------------------------------------------------------- /src/base/b-router/modules/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | /** 10 | * A list of URL patterns that will not be intercepted by the router upon clicking. 11 | * For instance, navigating to an external resource or using anchor-based navigation within a page. 12 | */ 13 | export const urlsToIgnore = [ 14 | /^#/, 15 | /^javascript:/, 16 | /^mailto:/, 17 | /^tel:/ 18 | ]; 19 | -------------------------------------------------------------------------------- /src/core/router/engines/browser.history.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import { deprecate } from 'core/functools/deprecation'; 10 | 11 | export * from 'core/router/engines/browser-history'; 12 | export { default } from 'core/router/engines/browser-history'; 13 | 14 | deprecate({ 15 | name: 'browser.history', 16 | type: 'module', 17 | renamedTo: 'browser-history' 18 | }); 19 | -------------------------------------------------------------------------------- /src/core/abt/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import { EventEmitter2 as EventEmitter } from 'eventemitter2'; 10 | 11 | /** 12 | * Event emitter to broadcast ABT events 13 | */ 14 | export const 15 | emitter = new EventEmitter({maxListeners: 1e3, newListener: false}); 16 | 17 | /** 18 | * @deprecated 19 | * @see [[emitter]] 20 | */ 21 | export const 22 | event = emitter; 23 | -------------------------------------------------------------------------------- /src/core/component/interface/mod.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { PARENT } from 'core/component/const'; 10 | 11 | export type ModVal = string | boolean | number; 12 | export type StrictModDeclVal = CanArray; 13 | export type ModDeclVal = StrictModDeclVal | typeof PARENT; 14 | 15 | export interface ModsDecl { 16 | [name: string]: Nullable; 17 | } 18 | -------------------------------------------------------------------------------- /src/models/demo/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import Session, { provider } from 'models/modules/session'; 10 | 11 | export * from 'models/modules/session'; 12 | 13 | @provider 14 | export default class Demo extends Session { 15 | static override request: typeof Session.request = Session.request({ 16 | responseType: 'json', 17 | cacheStrategy: 'never' 18 | }); 19 | } 20 | -------------------------------------------------------------------------------- /src/models/demo/session/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import Demo, { provider } from 'models/demo'; 10 | 11 | @provider('demo') 12 | export default class Session extends Demo { 13 | override baseURL: string = '/session'; 14 | 15 | static override request: typeof Demo.request = Demo.request({ 16 | api: { 17 | url: 'https://test.v4fire.rocks' 18 | } 19 | }); 20 | } 21 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page2/p-v4-dynamic-page2.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-dynamic-page'|b as placeholder 12 | 13 | - template index() extends ['i-dynamic-page'].index 14 | - block body 15 | < b-button.&__button v-func = false 16 | p-v4-dynamic-page2 17 | 18 | < b-button.&__button-func 19 | Functional button 20 | -------------------------------------------------------------------------------- /src/pages/p-v4-dynamic-page3/p-v4-dynamic-page3.ss: -------------------------------------------------------------------------------- 1 | - namespace [%fileName%] 2 | 3 | /*! 4 | * V4Fire Client Core 5 | * https://github.com/V4Fire/Client 6 | * 7 | * Released under the MIT license 8 | * https://github.com/V4Fire/Client/blob/master/LICENSE 9 | */ 10 | 11 | - include 'super/i-dynamic-page'|b as placeholder 12 | 13 | - template index() extends ['i-dynamic-page'].index 14 | - block body 15 | < b-button.&__button v-func = false 16 | p-v4-dynamic-page3 17 | 18 | < b-button.&__button-func 19 | Functional button 20 | -------------------------------------------------------------------------------- /src/traits/i-history/i-history.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | $p = { 10 | 11 | } 12 | 13 | i-history 14 | &__history 15 | height 100% 16 | 17 | & [data-sub-pages] 18 | absolute top 0 left 100vw 19 | zIndex(overall) 20 | 21 | & 22 | & > [data-page] 23 | position absolute 24 | size 100% auto 25 | 26 | &__page_turning_in 27 | transform translateX(-100vw) 28 | -------------------------------------------------------------------------------- /src/core/component/engines/zero/README.md: -------------------------------------------------------------------------------- 1 | # core/component/engines/zero 2 | 3 | This module provides an adaptor to render components without any MVVM libraries, like Vue.js or React. 4 | The adaptor can be helpful for SSR or simple landings. Obviously, such features, like data-binding and automatically 5 | re-rendering not working with this adaptor. 6 | 7 | ```js 8 | import ZeroEngine from 'core/component/engines/zero'; 9 | 10 | // {ctx: {...}, node: Node} 11 | console.log(await ZeroEngine.render('b-input', {value: 'Hello world'})); 12 | ``` 13 | -------------------------------------------------------------------------------- /src/core/router/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | /** 10 | * [[include:core/router/README.md]] 11 | * @packageDocumentation 12 | */ 13 | 14 | export { default } from 'core/router/engines'; 15 | 16 | export * from 'core/router/const'; 17 | export * from 'core/router/modules/helpers'; 18 | export * from 'core/router/modules/normalizers'; 19 | export * from 'core/router/interface'; 20 | -------------------------------------------------------------------------------- /src/core/session/const.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import { EventEmitter2 as EventEmitter } from 'eventemitter2'; 10 | 11 | /** 12 | * Event emitter to broadcast session events 13 | */ 14 | export const 15 | emitter = new EventEmitter({maxListeners: 100, newListener: false}); 16 | 17 | /** 18 | * @deprecated 19 | * @see [[emitter]] 20 | */ 21 | export const 22 | event = emitter; 23 | -------------------------------------------------------------------------------- /src/core/component/engines/zero/helpers/interface.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { ComponentElement } from 'core/component'; 10 | 11 | export type DocumentFragmentP = DocumentFragment & { 12 | getAttribute(nm: string): void; 13 | setAttribute(nm: string, val: string): void; 14 | }; 15 | 16 | export type DirElement = 17 | Element | 18 | ComponentElement | 19 | DocumentFragmentP; 20 | -------------------------------------------------------------------------------- /src/super/i-static-page/modules/theme/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.60.0 (2023-09-28) 13 | 14 | #### :rocket: New Feature 15 | 16 | * Added possibility to detect the theme based on user system settings 17 | 18 | ## v3.0.0-rc.164 (2021-03-22) 19 | 20 | #### :rocket: New Feature 21 | 22 | * Module released 23 | -------------------------------------------------------------------------------- /src/core/dom/in-view/intersection/helpers.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export const hasIntersection = 10 | // tslint:disable-next-line strict-type-predicates 11 | typeof IntersectionObserver === 'function' && 12 | 13 | // tslint:disable-next-line strict-type-predicates 14 | typeof IntersectionObserverEntry === 'function' && 15 | 16 | 'intersectionRatio' in IntersectionObserverEntry.prototype; 17 | -------------------------------------------------------------------------------- /src/models/demo/input/mocks.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | export default { 10 | GET: [ 11 | { 12 | query: { 13 | value: undefined 14 | }, 15 | 16 | response: { 17 | name: 'foo', 18 | value: 'bar', 19 | 'mods.someMod': 'bar', 20 | setMod: ['anotherMod', 'bla'] 21 | } 22 | }, 23 | 24 | { 25 | query: {value: 1}, 26 | response: 'bar2' 27 | } 28 | ] 29 | }; 30 | -------------------------------------------------------------------------------- /src/super/i-block/i-block.styl: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | @import "global/g-def/funcs.styl" 10 | @import "global/g-def/consts.styl" 11 | 12 | $p = { 13 | overWrapper: false 14 | } 15 | 16 | i-block 17 | &-is-style-loaded 18 | color alpha(#00FA9AFF, 0) 19 | 20 | if $p.overWrapper 21 | &__over-wrapper 22 | absolute top 0 left 0 23 | zIndex(layer, 2) 24 | display none 25 | size 100% 26 | -------------------------------------------------------------------------------- /src/core/abt/engines/index.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | import type { ExperimentsSet } from 'core/abt/interface'; 10 | 11 | /** 12 | * Provides a set of abt options 13 | * @param opts - experiments options 14 | */ 15 | // eslint-disable-next-line @typescript-eslint/no-unused-vars-experimental 16 | export default function abtAdapter(opts: unknown): CanPromise { 17 | return []; 18 | } 19 | -------------------------------------------------------------------------------- /src/core/async/README.md: -------------------------------------------------------------------------------- 1 | # core/async 2 | 3 | This module extends the [Async](https://v4fire.github.io/Core/modules/src_core_async_index.html) class from and adds a bunch of methods for browser-specific async tasks. 4 | 5 | ```js 6 | import Async from 'core/async' 7 | 8 | const $a = new Async(); 9 | 10 | $a.requestAnimationFrame(() => { 11 | console.log('Boom!'); 12 | }); 13 | 14 | $a.dnd(document.getElementById('bla'), { 15 | onDragStart() { 16 | 17 | }, 18 | 19 | onDrag() { 20 | 21 | }, 22 | 23 | onDragEnd() { 24 | 25 | } 26 | }); 27 | ``` 28 | -------------------------------------------------------------------------------- /src/core/component/engines/engine.ts: -------------------------------------------------------------------------------- 1 | /*! 2 | * V4Fire Client Core 3 | * https://github.com/V4Fire/Client 4 | * 5 | * Released under the MIT license 6 | * https://github.com/V4Fire/Client/blob/master/LICENSE 7 | */ 8 | 9 | //#if runtime.engine = vue 10 | export * from 'core/component/engines/vue'; 11 | //#endif 12 | 13 | //#if runtime.engine = zero 14 | // @ts-ignore (double export) 15 | export * from 'core/component/engines/zero'; 16 | //#endif 17 | 18 | export * from 'core/component/engines/interface'; 19 | export { VNode } from 'core/component/engines/interface'; 20 | -------------------------------------------------------------------------------- /src/form/b-select-date/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | Changelog 2 | ========= 3 | 4 | > **Tags:** 5 | > - :boom: [Breaking Change] 6 | > - :rocket: [New Feature] 7 | > - :bug: [Bug Fix] 8 | > - :memo: [Documentation] 9 | > - :house: [Internal] 10 | > - :nail_care: [Polish] 11 | 12 | ## v3.0.0-rc.201 (2021-06-17) 13 | 14 | #### :boom: Breaking Change 15 | 16 | * The component was renamed `b-input-birthday` -> `b-select-date` 17 | 18 | #### :memo: Documentation 19 | 20 | * Added documentation 21 | 22 | #### :house: Internal 23 | 24 | * Fixed ESLint warnings 25 | --------------------------------------------------------------------------------